Some refactoring, a bit of SidedClass shenanigans. Also update forge version.