refactored code to simplify projects using composite devices
refactored normal usb single mass storage device code to use same composite variant of driver
refactored usb mass storage device code so that it ties in with the normal HAL and is used commonly by both sets of sample code