move the keyword installation logic into mop.pm
refactor
hack around things being methods and keywords clashing

this really should be using lexical exports for the keywords, but that's
currently broken. this might be good enough for now, but it should
really be removed as soon as possible because it is ugly and fragile.