Reject additional votes

Depends on #208

Finally starting to clamp down on the API by rejecting new votes once the user has already voted unless/until they remove the blocking vote.

This exposes a TON of weaknesses in our code from our accumulated technical debt we built up for demo day.

Things still needing to be done:

1) Create a /changeVote or /updateVote API endpoint to prevent a race condition with multiple-choice-single-response
2) Create an endpoint to get the user's current votes
3) Add support for all of that to the client.

This pull is set to merge into the sessions branch of upstream, since this will require a team effort to fix and this is not stable in its current condition.