ENH/TST: Model addition, predefined Models, test and fixes

ENH: BaseModels and some predefined models

TST: A utility func checks approximate equal of fit results.

Also, some unit tests for Model. More needed.

BUG: Minor fixes in light of testing

TST: Tests for predefined models

ENH: Model addition is defined.

ENH/TST: Added several more predefined models with tests.
CLN/API: 'sigma' is now 'weights', and Model subclasses use functions in utilfunc.py
Merge pull request #68 from danielballan/models

Model addition, predefined subclass Models, and lots of unit tests