split, rework and rename `concatFlags`

concatFlags does too many things. It should focus on undoing alignment operations, and the concatenation/appending part should be moved to a separate function.

Should we also remove the "inverse_" prefix from the method literals?

Edited by David Schäfer