Move the model classes into a seperate 'library' that can be shared with the client.

- I'd normally create a client model, but for this sample it's a shared model.
Added outline tests for the UI dart classes.