tests. these need cleaned up and rewritten. again
tests are working now