Fixed an issue where binds were linking too early.

Custom linking can now be provided per function, though
at this time, only bind and compile_error takes advantage of this. The link function
works much like optimizeDynamic, except it is called after function
resolution, so a function that is removed from the AST after optimization
may never be linked. compile_error helps to demonstrate this especially, and
can be used as a preprocessor error mechanism, to halt compilation if compiler
environment values are incorrect. This works much like C++'s #error preprocessor
directive.
Removed pinfo()[20] for the time being.