Why do AOP stuff in the constructor instead of the `initializer()`?