Feature/new interface integration part6

* Integrates editExperiment page with the pages for create and edit experiment.
* Receives form input and processes it for database updates
* Updates the experiment model to remove old methods surrounding `track_number` and adds convenience methods for adding tracks and updating track weightings 

Note: Tests do not pass in this pull request; this will be fixed in a subsequent pull request.
Json.loads means actually the experiment can be passed as the entire body.  Good simplification