More fleshed out, 2nd Commit , ways to go still.