Support lazy referencing

this PR would make the snowcrash able to recognize references which has been defined after the location of the usage. closes issue #84.
Sorry about this, I just realized it.

The argument order is wrong. First read-only ones, `node`, `pd`, then `report`, `payload`, `sourceMap`