Hi
To learn about USB operation you can also look at:
http://www.utasker.com/kinetis.html
This contains a Kinetis USB engine simulator which allows the USB controller operation to be analysed and all code using it to be tested and verified.
It allows accurate simulation of CDC (including up to 6 composite USB-CDC to UART bridges), RNDIS, MSD, Audio, mouse and keyboard devices as well as CDC and MSD host (including memory stick emulation).
New classes and applications can be added as required with greatly increased efficiency compared to traditional methods.
Some docs:
http://www.utasker.com/docs/uTasker/uTaskerV1.3_USB_Demo.PDF
http://www.utasker.com/docs/uTasker/USB_User_Guide.PDF
http://www.utasker.com/kinetis/USB_Device.html
The code includes various classes that have been proven in industrial projects, are operational on all Kinetis parts without needing porting and can be built with all popular compilers or IDEs.
Regards
Mark