reduce size of state machine by reducing state overalignment
print some more sizeofs
use small integer instead of function pointer to remember which destructor to call