Big update, fixing lots of bugs, improving canvas functionality