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.
No need for an iterator here. This could have been directly `SourceMap<Payload>&`, right?