Functional part1.  Room for improvement.
Part2 constructors created.  toString method started.