[#115] Enable parser for missing behaviours

Used pegjs to generate a PEG parser
Use that to process the requested missing handler name
Refactored handlers to return functions that can be applied
Refactored composite to work over a sequence of handlers
Refactored singular to take a particular handler
Merge pull request #132 from mattdenner/missing_behaviour_grammar

[#115] Enable parser for missing behaviours
selection_page_model loads a batch
Walks upto rack scan
removing default buttons from the step_view.
[#100] adding the csv parser module (partial implementation)
[#100] finishing adding the csv parser
partial implementation for the tube_rack creation
making sure the barcode expected by the csvParser is of 'FR\d+' format
[#100] creates the rack with barcode and tubes inside (no print for now)
[#100] update after rebase
Merge branch 'rack_file_to_transfer' of github.com:benoitmangili/s2_extraction_pipeline into retubing_returns_to_login_page
Updates to config for demo#3
Merge pull request #135 from seandunn/retubing_returns_to_login_page

Retubing returns to login page
Cleaned up selection page presenter
Addressed comments and further cleanups
Cleaned up selection page presenter
Addressed comments and further cleanups
Rebased with sanger master
Merged non-fast-forward issue