Implementation of operations

Operation.operation() is a structured sequence of deferreds.
Operation.stateManagement() maintains state of input & output items.
Operation.transfers() handles transferring quantities.
Fixed a bug in the tube resource initialisation.
Fixed an issue in root so that it picks up actions
Added transfer models to handle transfer decoding.
Added tube rack movement handling.
Merge pull request #55 from mattdenner/implementing_operations

Implementation of operations
Proxy the raw JSON rather than merging it in

All root level raw JSON attributes are accessed through proxy methods.
Fixed some of the JSON so that it works with the proper structure.
Merge pull request #56 from mattdenner/proxy_raw_json

Proxy the raw JSON rather than merging it in
Merge branch 'master' of https://github.com/sanger/S2Mapper into batch_save_refactoring
Fixed batch JSON for saving
Merge pull request #57 from mattdenner/fix_batch_json

Fixed batch JSON for saving
Merge branch 'master' of https://github.com/sanger/S2Mapper into batch_save_refactoring
Remove deprecated getBatchFor method
Fix broken barcode search test config
Merge branch 'remove_deprecated_order_methods'
Merge branch 'master' of https://github.com/sanger/S2Mapper into batch_save_refactoring
fixed tests for order_resources ie it now covers the roles update