Refactored to max.
Added 'this' for consistency in various places.
Fixed the lousy union implementation.