Add MobEffect <-> PotionEffect conversion methods in CraftPotionBrewer

This moves the conversions to a semi-appropriate class as utility methods, so they can be reused in the beacon code.

As a side effect, this also fixes BUKKIT-4357 and BUKKIT-3653
Implement beacon API. Adds BUKKIT-2842

Write out custom beacon effects to NBT

Change custom NBT from Bukkit-Blah to Bukkit.Blah

Undo prettydiff indentation :|

Implement new API changes - BeaconPulseEvent, radius, activoverride

Missed new api methods

Implement getHolder() in BeaconInventory

Remove eliminated API method setDefaultEffects()

Use correct default value for radius (:agnryfaic:)

Fix BeaconPulseEvent - previously, it wasn't working

Respect cancelled for BeaconPulseEvent

Cleanup new imports in NMS file

Remove unused method

Fix unused method, fix case where effects was not initialized, permit setEffects(null)