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.
@pksunkara it's possible but initializing `ParseResult<Payload>` in blueprint is just not clean, and not safe(as point of memory) if you have a good solution for it let me know.