Support providing connections/devices as an object

Before:

```javascript
connections: [
  { name: 'loopback', adaptor: 'loopback', port: 13 }
],
```

Now:

```javascript
connections: {
  loopback: { adaptor: 'loopback', port: 13 }
}
```

Array syntax still works, but has been marked as deprecated.