Command wrapper

Introduces tasks for the different commands. Properties are managed by the extension to enable configuration via 
```
variant {
     deviceId '123456'
}
```

This reduces the definition overhead in the applying project. (Could be further reduced now by registering the tasks during plugin registration).

Note that the device name is no longer used in the automatic task naming. 

I've also included the files under `buildSrc` from my local dev environment for easier testing.  It expects a link to the plugin source named `command`.