add more tests and a new modular structure
Merge pull request #26 from herman-rogers/dev

add more tests and a new modular structure