incorporated pull request feedback
use CompareStringW as opposed to allocating another string
added more edge case tests