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 is needed because we introduced the reference structure. In the future, a reference can be a file too. And yes, We need to change the api-blueprint-ast.