Part 1 working, but not so sexily
added all of gabe and my changes