Style improvements to Variants

commits should speak for themselves.
it might need some testing.