[B+C] Support registering Metadata Providers [BUKKIT-3625]

This is the companion craftbukkit side to https://github.com/Bukkit/Bukkit/pull/773. This adds support for registering Metadata Providers as per that ticket and Atlassian ticket https://bukkit.atlassian.net/browse/BUKKIT-3625