onHotKey can accept optional argument, added jna dependency

Hi! I'm working on a project in Clojure that uses keymaster, and when I saw you made this, I figured I'd help you out to show how cool I think this is.

I wrote a function (and put it in utilities.clj) that accepts a function and any number of arguments, and calls the function on all of the arguments it can accept. This is then used in onHotKey to allow the given function to take an optional argument.

I couldn't get anything to work on my computer (Ubuntu 12.04) without the jna library that keymaster depends on, so I added that to project.clj

The only other thing to mention is that I like verbose variable and function names, so I changed around all them in core.clj. If you want to me change them back, or want me to do anything like rebase and clean up my commit history, just let me know.

Can't wait for the clojar!