Generic voting application

The stars application has been removed in favor of a more generic voting
application that works with any model. Starring a project is just a
special case of voting a project.

### Usage

Add a vote:

    votes.add_vote(<model instance>, user)

Remove a vote:

    votes.remove_vote(<model instance>, user)

Get the queryset of users that voted an object:

    votes.get_voters(<model instance>)

Get the number of votes an object has:

    votes.get_votes(<model instance>)

Get the objects of type <model> voted by an user:

    votes.get_voted(user, <model>)

### Issues
The issues application is already making use of the votes application
through the following urls:

#### Up-vote issue
Url name is **issues-upvote**.

        POST /api/v1/issues/<id>/upvote

#### Down-vote issue
Url name is **issues-downvote**.

        POST /api/v1/issues/<id>/downvote

### Issue votes count
The number of votes an issue has is returned as the field **votes** in the issue listing and detail endpoints.