Adding the code I worked on to the repo.  Nothing is quite finished yet, still needs to be tested, but just to show what my general thinking is right now.  Turns out, it is easier to code when you have code then when you dont have code to work on.  Expect heavy changes.