refactored shaaaaa lib to return an obj of results, added tests