Add some validations and support for tagging