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. this PR is not yet ready to merge.
@pksunkara I'm trying to traverse `sourcemap` AST alongside of `blueprint` AST but it seems to me that `sourcemap` AST is empty in this point, is it suppose to be like this? and if yes how do you think I can add the source map in `checkLazyReferencing`?