Separate USB Ports on the DUE

So I'm a little confused by the DUE :sweat_smile: , mostly because it comes with all the standard "Hi, I'm an Arduino" fanfare, but underneath there's a pretty complex bootloader arrangement between an ATMEL chip and the SAM3X ARM procesor.

My question is: Is it possible to retain the 'programming port' USB connection for loading code and updating sketches, but have the 'native port' USB connection function as a USB/HID device?

Do I still need to rewrite the bootloader to use the device in this way, or is this something I have to use the SAM/BA bootloader for?

Do I have to do this via the ICSP connection, or can the programming port/ATMEL chip somehow assign the needed boot code for the SAM3X native port to work as a USB device?

Is there another free toolchain I could use for developing directly for this particular ARM chip, and if so can anyone suggest one?

I realize this is a complex mess of questions, but unfortunately there is not much in the way of documentation for the DUE, and the code reference is not helping me figure out the code differences from a regular ATMEL arduino board(I found USBSerial vs Serial...but that's about it).