Improved namespaces, attributes and values parsing.

More specifically, this commit adds support for:
- namespace, node and attribute names with numbers and underscores;
- attribute values with numbers, underscores and spaces
Added support for wildcard in namespace and attribute names

This commit enables SaXPath to match nodes and namespaces with incomplete names such as /b*.
NOTE: This behavior was unfortunately not achievable with PegJS, so the State class was modified to internally build a RegExp (see State._matchesName).
Updated blammo dependency to last version (0.4.4)
Updated parser to better respect the XPath stardard.

This commit:
- improves node and namespace name parsing, not allowing them to start with a number, as per the NCName definition
- fixes the wildcard behavior: instead of behaving like a RegExp (which wasn't specified in the norm), the wildcard should now be be used alone as a node name, and will capture all nodes.
Updated wildcard definition in README
Merge remote-tracking branch 'PaulMougel/master'

Conflicts:
	package.json
Minor change to matching node