Change union to class.
Add a missing header.