* Moved the bullet update into the physics system
* Fixed server<->client physics resync (it isn't particularly smooth, but it keeps things in the right place on the client).
* Cleaned up handling of events received for unavailable entities so they are thrown away
* Added current velocity and angular velocity to rigid body component, so they will have the correct state on load.
Initial work refactoring the class metadata systems
Fixed a bug causing block pickups not to work in some sessions - deserialization of prefabs was not loading them through the asset manager.
Corrected WorldRenderer to check if the camera coords are in a loaded chunk before checking whether it is under water.
Fix for the mouse not correctly being grabbed in some situations, particularly if the window does not have focus during loading.
A better fix for the mouse being captured if the window doesn't have focus during load.
Overall clean up and refactoring of the metadata and low-level serialization support.
Separated copy handling from serialization.
Split out field and constructor access to allow alternate strategies in the future.
A little more refactoring and documentation. Merged a number of classes back into their interfaces (the split was unnecessary).
Some further refactoring, moving replication and ownership metadata into FieldMetadata subclasses (and adding support for FieldMetadata subclasses).
Merge branch 'multiplayer' of https://github.com/MovingBlocks/Terasology.git into LocalPhysicsRefactor

Conflicts:
	src/main/java/org/terasology/engine/modes/StateIngame.java
	src/main/java/org/terasology/physics/PhysicsSystem.java
	src/main/java/org/terasology/physics/components/RigidBodyComponent.java
 Fixxed the merge with the main multiplayer branch.
added a warning that I found after some testing with masses and damping.