Merge pull request #227 from jpav/master

Fixes #226.  Also fixed some compiler warnings.
Merge pull request #229 from jpav/master

Fixes #228. Also renamed base exception to BaseException and made abstra...
Merge pull request #231 from jpav/master

Fixes #230. Also made logging facility use calling method as context.
Initial model property and property descriptor framework.
Merge pull request #232 from elvisisking/170

Initial model property and property descriptor framework.
Fixes #224