works for simple user commands. many things half implemented and lots of messy code. need to work on >1 arg calls and built-ins