delay loading dependencies until task execution

bower is extremely slow to require(), therefore just loading the bower task
will masssively slow down a grunt build even if the bower task is not executed
in that particular grunt run

Actually, I realize this is a somewhat crude hack and the issue should be properly fixed in bower (by not wasting a whole second for a require on decent hardware) and maybe also in the grunt API (something like an `initialize` method that is only run when the task is actually used) - but this annoyed me so much so many times every single day that I had a quick shot at it... Feel free to close and hate me for this PR. Or if you have a better idea for a cleaner workaround, I'd love to hear it ;)

:sparkling_heart:, Chris