Rewrote Font.GetHashCode() to improve uniqueness.
Added test cases to prevent reintroduction of collision scenarios observed in Font.GetHashCode().