Enabled usage of Key Names instead of key codes in configuration file. 

This required the external keysym(https://github.com/substack/node-keysym) library. 

Symbols are not detected, actual Key Names are required. As an example: a semicolon should be specified as `semicolon` and not as `;`. Key Names can be found in the KeySyms specification at:
http://www.cl.cam.ac.uk/~mgk25/ucs/keysyms.txt
@harmjan do you perhaps have an idea how I can create the `ks2kc` map, without having to use encapsulate the whole code where `ks2kc` is used with `X.GetKeyboardMapping`. I was unable to write to any global variable which would allow me to use it. Is this indeed the *callback hell*(http://callbackhell.com/) often talked about? Do you believe the current solution is correct as is or do you believe this can be refactored?