Lots of changes that fix things and make them cleaner
Merge branch 'models' of https://github.com/clausman/soco into models