Please see individual commits (top 3).
This is on top of !27 (merged) cleanup, should be merged afterwards.