added more error handling, ability for arguments
got stack traces to print
now know how to inherit things in javascript which is real stupid