Creating proper files for each interface / class so autoloader can (hopefully) find them
Moving the observer calls to the respective classes. There is no need to decouple them as Tags are part of core and need to be coupled or there may be data loss.