[TAV-364] Allow the run model to be overridden.

This will allow for lots of extra stuff to be added in a main app should it need
to.
[TAV-365] Improve run creation/queuing logic.

A run is now queued via a callback on creation.
Generator re-organization: Callbacks.

Moved into their own callbacks directory.
Generator re-organization: Controllers.

Moved into their own controllers directory.
Add a generator to copy models that can be overridden.

Just copy simple stubs into the main app so they can be customized.
Enable configuration of a Taverna Server connection.

Use the ConnectionParameters stuff from the ruby gem. The default uses a
DefaultConnectionParameters so that we get peer verification by default.