Better microcode directory handling and added uvcvideo reload support
Alternate/system microcode directory can be defined in config.h by using #define UCODEDIR as appropriate. Also created a small function that formats a filename by allowing you to substitute in USB IDs, kinda like printf.
If ENABLE_RELOAD is defined, the ability to reload the uvcvideo kernel module will be compiled into the application. It simply creates a shell process and executes "modprobe -r uvcvideo; modprobe uvcvideo". It is assumed that you're running the application as root for this to work.