Refactored hash.route to.

the pattern matching is now its own routine. route now has an exec
method to match patterns and trigger proper events when needed. events
are now triggered on the hash object when routes change