Support binding f-keys

Add f-keys to the keycode map to allow binding to f-key events.
add methods to expose _MAP, _KEYCODE_MAP, and _SHIFT_MAP
add methods to expose _getReverseMap
Allowed setting of key sequence delay
Added some error checking
Edited docstring
add custom timeout support
Added method to get the currently defined callback for a specified key combination. Useful when you need to temporarily use a key for something else.
Refer to Mousetrap through window in plugins for better compiler support

If Mousetrap and a plugin are compiled together using Closure compiler with the
ADVANCED_OPTIMIZATIONS flag, the compiler needs to be certain that the Mousetrap
object referred to by the plugin is the one created in the main Mousetrap
definition. However, plugin definitions used to refer to Mousetrap without going
through window, so the compiler thought it was a different object. Fix this by
referring to window.Mousetrap also in plugins.
Fix event.returnValue warnings in Chrome

No need to worry about adding more code.  Closure compiler ends up
rewriting this as

```
(b.preventDefault?b.preventDefault():b.returnValue=!1,
b.stopPropagation?b.stopPropagation():b.cancelBubble=!0)
```
Increase version to 1.4.6
Minimize
Allowing to use combination composed of modifiers and plus (+) key (for example: 'ctrl++')
Added test for ctrl++ combination
lowercase 'k' in example
Merge pull request #183 from jwsy/patch-1

lowercase 'k' in example
Include finishKey parameter on the record plugin

I can't think of many cases where the hardcoded one-second inactivity period to trigger the callback would be useful. This lets you set an escape key so that (for example) the recorded inputs can be returned as soon as the user presses 'enter'.
Merge remote-tracking branch 'remotes/usmonster/master'
Merge remote-tracking branch 'remotes/ccampbell-original/master'
Merge remote-tracking branch 'remotes/kpricorn/master'