Definition is no Hash anymore to avoid problems with new {..}.
unify how we pass blocks.
we don't have Definition#default anymore.
no size.
don't test size anymore.