Just my initial push

Here is the code I have worked out so far.