Our own JMegaHal implementation because I'm tired of hooking Chester

Completely untested, probably fucked something major up.