Support for non-ASCII characters in variable names

Copied code from https://github.com/marijnh/acorn/ with attribution. 
Translated to Python. 
Basic tests included.

Fixes #305