Implement new APIs related to protocol and block, bugfixes, performance
This update will be required for the next release of TrainCarts, since many new APIs that TC will need for soon-to-be-announced features are added in this update.
Changes for 1.12.2-v2:
Changes in Mountiplex to significantly speed up function calls performed on *Handles, particularly when parameters or return types are primitives. There will also be less temporary lag when instances are first created.
Cleanup of old deprecated code, moving more of it to the new Handle based implementations instead of the old reflection system
Fixes setBlockDataFast not cancelling physics correctly when used
Fixes BlockUtil doPhysics 'self' parameter not working
Fixes BlockData getStepSound() not working correctly
Change all matrix maths to use doubles instead of floats, since it will also be used outside of maps. This also has some effect on map rendering.
Add handle classes for the PlayerInfo packet
Add handle classes for GameProfile Property system
Several performance tweaks made after profiling
Changes for 1.12.2-v3:
Fix Minecart forwardMovement field for >= 1.12
Fixes sound API to work on all minecraft versions
Fixes to onSyncPassengers (network controller)
Fixes compatibility issues introduced with 1.12.2-v2