Removed Magic constructor argument from subclass visibility. Much cleaner now.