No need - if you get a chance to take a look it would be great, but I certainly don't think guarantees are necessary
Well, HANS is integrated into the launcher so either HANS or R4 can be used when booting titles.
Not quite. titles.c handles retrieving the title information from the device and building the title menu. If the title is being booted using R4 then yes, regionfree.c is used to boot it, whether it's a cart or title being booted from the main grid or the title launcher. If HANS is being used then boot.c is used to launch hans.3dsx.
I was in the same position when I started. The launcher is quite complicated, especially in terms of how it handles booting various different types of apps/titles.
You need to install devkitarm, devkitpro and ctrulib first:
http://3dbrew.org/wiki/Setting_up_Development_Environment
You then need to update ctrulib to the great-refactor branch:
https://github.com/smealum/ctrulib/tree/great-refactor
Then you need to install the 3DS portlibs:
https://github.com/xerpi/3ds_portlibs
I was originally developing on Mac OS X, but found for some reason that the launcher would no longer boot properly when the binary was built on a Mac. So I switched to a Lubuntu VM and it's fine now.