Unit Tests would not compile, once they compiled, they didn't work correctly, once working correctly they found a couple bugs

Build, Run and Pass on all platforms