Allow anonymous voting

Major refactoring

![](http://media.giphy.com/media/12bVDtXPOzYwda/giphy.gif)

Introduces a `Visitor` class with subclasses for guests and members.

Guest voting will rely on a cookie which saves the IP address...

Guest votes are saved to a DB option which will keep all guests voting activity. Could potentially become huge.

To enable guest voting: ` add_filter( 'hmn_cp_allow_guest_voting', '__return_true' );`

Differentiate between the concept of a vote being valid and the fact that a visitor can vote.

Rename methods to better names, ( `update_comments_voted_on_for_user` => `log_vote` )