closes #6 - upvoting and downvoting fully implemented