* refactor to make testing options easier * some cleanup * remove async * get file to 100% coverage * address a couple comments