Initial Commit, should be functional.  Absolutely untested though