fixes validation query to make it pass on my machine
fixes inserting columns that are stored in the legacy journal but do not exist in the new journal table

This might e.g. occur when a plugin has added columns to the journaled table which is than journaled.
adds a struct to semantically group the previous state
use instance variables as this is what is intended
adds comment for sql statement
complete refactoring to ease reading - still a lot to do
a whole lot of cleaning up also fixes, sorry
restructures reusable migrator concerns into their own module
changes the container of attachment journals from Issue to WorkPackage