Fix for BSON decode error with large packets

* Using io.ReadFull instead of r.Read
* Incorporated more error opportunities in the case of mis- read and write
* Removed errors dependency
* Thanks to @zeebo for finding original fix
daemon saves and restores it's state
Ensure we handle EOF properly from daemon, if we receive EOF daemon has died and we need to shutdown so we aren't orphaned
go command not being found, PATH isn't being recognized this is temporary solution, will debug ssh issue later
adding debug line so we can see what the environment variable for ZooKeeper is, will help with invalid dial arguments being more descriptive
changing location of state file to be in /var/lib/skynet
fixing issue with sky honoring hosts flag, as well as deploy config not using criteria already pulled from flags
fix issue with constantly calling zookeeper to get instance list (still demo code anyway)
updating defaults for client
instances should be removed from daemon when stopped
sky admin commands should work with different machines in parallel
cmd/sky - fixing typo which causes region and instance criteria to be parsed incorrectly
cmd/sky services should register when started by default
service - Registered callback should be called on startup if the service was configured to be registered
cmd/sky - need to move binaries to .old when deploying in case the binary is currently running like the daemon
cmd/sky - mv should be done from build box, when doing remote build/deploy, also removed error checks for mv as it's expected to fail when the binary does not exist yet
cmd/sky - adding help for daemon stop
cmd/skydaemon - adding logic to cleanup nodes in zookeeper for host that aren't actually running when daemon starts up
cmd/skydaemon - moving cleanHost logic, we have not bound to an IP yet
cmd/skydaemon - we shouldn't cleanup daemon uuid on startup