APT shared font loading

Adds support for the APT service GetSharedFont function. The "shared font" is a system-wide font that is encrypted and compressed within the system NAND (see http://3dbrew.org/wiki/Title_list). The format of this font is BCFNT. Retail games and system titles require this font to render text, and typically check that it is valid at startup. As such, having a valid shared font is typically necessary to get past initialization of these applications. 

Fortunately, this can be dumped quite easily from RAM using a simple homebrew application and the ninjhax exploit. I'm going to add this homebrew app to our org in a followup PR, as well as documentation on the wiki.
Comment should explain why it won't work/why it's a hack: Structure has internal pointers which need to be relocated, and we need to figure out the algorithm used to determine the address, or if it's just a magic address.