Major changes done. Ready to push after a little more testing.