Separate forward and backward translation rules in separate table structs

A side effect is that it makes noback and nofor affect some more
rules. Making noback and nofor affect all rules is something for a
later commit though.
8 files changed