Make it Functional!

Ok this is a functional version. It doesn't save or do everything that I
want it to, but it is functional.