first commit
added 6 tests and bulk of code
updated files
updated with pull from master