Added --mapfile to generate a map of symbol addresses

This builds an address to symbol mapping for known symbol locations,
ignoring EQUates, since they're less likely to be reliable addresses.
This gives a much better quality sample for use by debuggers than a
pure symbol table dump, especially for the first 256 bytes.

Multiple symbols at the same address are resolved by the symbol most
referenced during assembly.
Preserve symbol case in export and map files

In the default case-insensitive mode, symbols are upper-cased for
use with the symbol table. This is visible in the exported symbol
and map files.

We now store a map from the working name to the original name, so
exported files use the original symbol case.