optimise message dispatch

Better utilise method caching provided by jRuby.