Reuse nlme on successive Model.execute()'s

bugfix: enforcing $data to be either absolute or relative to model
file's parent directory.
Decoupled model code

Trying to follow the mantra explicit is better than implicit
Consequence of this is that attributes are all lower-cased, not
case-insensitive.
Has no real effect on record definitions, just thinking about
interactive ux.
TODO: Testing.