Correctness - change to lasttimestamp attempts to immediately put in the datastore
Correctness - No update at the end of the learDeviceByEntity
Finished first round of optimisations.

Added optimisations on this commit:
 -> ClassState is not on datastore. It creates DeviceMultiIndexes (one table per each). Default : one more table. Allows individual accesses instead of entire table.
-> DeviceUniqueIndex avoids inserting same entity again
Fully Optimized Best case - Ping between known hosts . TODO - Broken replaced (Works single case now).

Current best case : 4 reads , 2 writes.

Applied several tricks:
-> ignoring 0.0.0.0 ip address entity
-> Using one read request to get Device : primaryIndex returns Devices Now
-> Removed replaces since it seems broken.
Optimization - deviceKey is now created with get_and_increment
Updates to LearningSwitch and LoadBalancer, minor things.
no message
Merge branch 'optimizations' of https://github.com/fabiim/poseidon into optimizations