Implement global shortcut API, fixes #439

@zcbenz, please take a look! 
And thanks for @orzFly on windows platform implementation.
We don't need to handle the parameter conversion manually if there is no optional parameter, simply list the arguments in function prototype would do the magic:

```c++
bool GlobalShortcut::Register(const std::string& key code, const base::Closure& callback) {
}
```