added quick unit tests for shingles functions and did some refactoring to use convention to indicate private functions vs public functions