frontend: allow users to upvote or downvote projects
This change will show a reddit-style upvote and downvote
buttons next to the project name. It is implemented in a way
that we can see the sum of a project score as one number but
we can also see the number of upvotes and downvotes separately
because even though the overall score of a project might be high,
if there is considerable amount of downvotes, there might be
something fishy about it.
The score and voting is available to be seen by an anonymous
user, however cliking on a upvote/downvote button will redirect
him to the login page.