Add further test cases for `optimise.order`

Add further test cases for `optimise.order`.

Minor change to variable name in `parser.code`.

Minor correction to `solve` documentation.
Implement further tests for `Model` class

Implement further tests for `Model` class, requiring simple derived
classes to solve for simple relationships.
Move 'solve' subparser to `cli` module

Move 'solve' subparser in model template to new `parsers` module in
`cli` sub-package.