Support empty identifiers in node map

The solution is to prepend all indexes, i.e., node map keys,  with a hyphen ("-"). It leaks to a lot of places it should probably encapsulated into a NodeMap class or something similar.

This closes #47