More warning suppression.
Added unit test.
Dramatically improved performance.