First commit in a while - lots of new stuff