refactored voting, added voter class