Lots of organization

+ add a server package (mostly a skeleton at this point)
+ update makefile to properly 'phony' all terms
+ move messaging structs and functions from common.go to messaging.go
+ change a bunch of variables from being exported
+ add a broadcast function
+ eliminate race conditions from quorum
+ fix marshalling bug in signedHeartbeat.marshal()
+ merge Luke's changes to common.MessageRouter
+ move ticking safety to state.Start()
+ clean up tests, comment out a handful of obsolete tests (will be re-implemented)