All working, with minor bugs, but working!
Merge branch 'temp'