moving unit test to correct location
adjusted complexity
added named functions so stack traces are easier to read
removed blanket dependency
more unit tests