Refactor AST node compatibility internals
Add missing final modifier to NodeDelta methods
Move activity preferences to separate package, refactor some internals