Fleshed out a bit more. Still need to work out kinks and set up CLI.
Added a lot more functionality