Cross compilation support
Here is a series of little tweaks to the shared makefiles I've been storing up for a few months. They're generally mostly with the aim of making it easier to tweak master makefiles to support cross-compilation, but also:
- ROM_SYMS can now be defined higher up the master makefile, to match SA_LIBS and ROM_LIBS
- components using CLibrary can export other files in addition to headers during export_hdrs
- separate build switches can be used for application and module variants of libraries