Preparation for spanning of source code in parser

This PR modifies the FC structure to accommodate for spans, and overloads the IdrisParser to save the span for the last parsed token. This allows the work of making actual useful spans for source code possible without changing many files (so it could be done incrementally).

NB: This changes the IDE Slave protocol and Error Reflection to accommodate these span changes. This is mostly important for people relying on source location for IDE Slave.