Iss21 completion. Merge request

Issue 21 Phase two is complete. Debugging and testing complete.

Ready to merge.