Usb host driver and client/host otg changer interface modules

original here:
https://github.com/sztupy/samsung-kernel-aries/commit/4c2e0061690ab1d0fada7fad543d22cfcc34c928
importing files from sgs2 host driver (this removes kevinh's fixes though)

original here:
https://github.com/sztupy/samsung-kernel-aries/commit/ca78b14e5a692b6ef08eaa30d678b8b28bcc2601
added kevin's fixes to sgs2 host driver; added host_notify module

original here:
https://github.com/sztupy/samsung-kernel-aries/commit/d52864a2ef895b83b9e1823ff6bb402cf55fdc2c
cleaned host start/shutdown code

original here:
https://github.com/sztupy/samsung-kernel-aries/commit/f074b7cd4c644ab04cec6505fe967352d5b73d42
added tt support for root hub
added initial support for dwc hot driver (not usable yet) allow switching of drivers through sysfs
forgot to commit these

original here:
https://github.com/sztupy/samsung-kernel-aries/commit/363d9df5b68353a567cb9da80443b3df3d52ea60
allow changing of driver implementations while running

original here:
https://github.com/sztupy/samsung-kernel-aries/commit/97a83b1e1eaccd7e1a2076f755da7ffc5475638c
added support for turning off charger
added joydev
Don't inline functions for USB OTG
Fix derp
fixed scheduling bug