Added spin column barcode display functionality, and performed some code cleanup
Labware now only renders once
Merge pull request #90 from mikemases/Spin_Column_BC

Added spin column barcode display functionality, and performed some code...
Merge pull request #91 from mikemases/Tube_Bug

Labware now only renders once
Reload on any changes in app/scripts
Change pipeline config to take accept muli-roles
Updated config for accepts and retubing
Add guard to throw an exception when workflow can't be found
Merge pull request #109 from seandunn/retubing

Retubing
Remove files that should have been long removed before
[#99] Move inputs & outputs behind objects

Create a common interface for deferred/non-deferred things
Use deferred implementation for inputs
Use non-deferred implementation for outputs
Add finding by barcode to these
[#99] Refactor input/output cache to use promises

Both inputs and outputs can be treated as promises
Finding by barcode logic now moves into the cache
We can specify what should happen if it is *not* found
[#99] Take missing behaviour from configuration

Allow connected configuration to define cache behaviour
Pass cache to missing handler so new barcodes can be added
Default the missing behaviour to do what it does now: nothing.
[#99] Move behaviour and missing handler code

Behaviours are related to connected, so put them in subdirectory
Added a missing handlers function in the same directory
Pass the owner model to the missing handler too
[#99] Added more missing handlers & caching behaviour

Added a 'report' missing handler that reports an error
Added a 'create' missing handler that creates missing tubes
Added a 'find' missing handler that finds tubes
Default behaviour for connected should be to 'report'
Re-cache any results so that we know the cache is consistent
[#99] Added composite missing handler

'composite' = 'find' and on unfound 'create'
[#99] Specify labware model during scanning

Scanning the barcode of a labware knows the type of labware
Finding something cached by barcode now takes the model
Missing handlers can be passed the model to create correct typet
[#99] Move caching into separate file
[#99] Refactor caching to a generic behaviour

How you find things in a cache is independent of the cache itself
Connected can now define getByBarcode as built on caching retrieval
[#99] Use promise behaviour on cache get