Merge pull request #4 from benmills/master

Voters will not grant a vote to a canidate with an out of date log.
Add ElectionTimer.
gofmt
Use a time.Ticker rather than sleeping for repeating timeouts
Adds tickerBuilder field to election Timer

This will allow changing ticker implementation for tests.
introduce Tickable interface and Default method to build a tickable
Use a controllable ticker in election timer tests.
Adds tiktok dependency to travis build.
Adds timer reset
Merge pull request #5 from wjdix/master

Use a time.Ticker rather than sleeping for repeating timeouts