Cache 'unbanged methods' to avoid string generation

This avoids creating a string for each method dispatch. It affords a
decent speedup on both sync and async method calls. Synchronous call
speed went up 11%, and asynchronous call speed went up 45% on JRuby.

Numbers from JRuby 1.6.7 / Java 6:

Before:

               spawn     3951.3 (±17.0%) i/s -      19186 in   5.009000s
               calls    16685.9 (±7.5%) i/s -      83080 in   5.009000s
         async calls   156155.0 (±6.9%) i/s -     784938 in   5.054000s
            messages   287811.8 (±13.5%) i/s -    1408484 in   4.995000s

After:

               spawn     3950.3 (±14.3%) i/s -      19364 in   5.011000s
               calls    18580.3 (±13.0%) i/s -      63063 in   5.019000s
         async calls   226302.4 (±8.4%) i/s -    1133840 in   5.054000s
            messages   306112.2 (±12.3%) i/s -    1504384 in   5.001000s
Deprecate Celluloid::Pool
Add #async as an alternative to the predicate syntax
Handle #async internally within an actor
Note removal of Celluloid::Application
Supervisors terminate supervisees on shutdown
Remove secondary level of supervisors from Celluloid::Groups
Don't try to terminate actors that are already dead
Avoid eager mailbox consumption in Celluloid::Worker
Support a root supervisor
Bump version to 0.10.1
Is it any good?
ThreadHandle wraps threads from InternalPool
handle_crash for all Exceptions
Construct ActorProxies directly from Actors
Increase time quantum to prevent sporadic spec failures
Revert "Increase time quantum to prevent sporadic spec failures"

This reverts commit d118db07abdaafa26debd553d00e41ca060acf86.
Handle crashed threads
add a method to clear the registry (for use in tests)
Run finalizers inside a Task