Added All of the main stuff I have already done

I did most of this already. This version is a port of a Node script I
did, which is hosted on BitBucket, though I have it set to private.
There are still a few chunks of functionality left for me to do but it
is mostly useable. Will probably revise some of the help menu since it
is can be a bit cryptic in spots. Currently compiles correctly with
both Clang and GCC 4.8.