Drawer

# Changes
 - Adds "drawer" that allows user to vote on candidates from the category page. Uses server-side `voteForm` partial, but injects the particular candidates ID into the hidden `candidate_id` field.
 - Refactored tile pattern to make drawer work more cleanly.

This definitely needs a refactoring pass, but I want to get this stuff merged in so it doesn't get out of sync.

For review: @angaither @weerd 
can the default here be `null` ?