Added MultiDecoder dependency ordering to address #1045

You don't have to go through the entire plugin creation process to get the subdecoders, you can get them from the tomlSection using a couple of type assertions. The following should work:

```go
func subsFromSection(section toml.Primitive) []string {
        secMap := section.(map[string]interface{})
        var subs []string
        if _, ok := secMap["subs"]; ok {
                subsUntyped, _ := secMap["subs"].([]interface{})
                subs = make([]string, len(subsUntyped))
                for i, subUntyped := range(subsUntyped) {
                        subs[i], _ = subUntyped.(string)
                }
        }
        return subs
}
```

With that you should be able to call `subs := subsFromSection(section.tomlSection)` inside your loop to accomplish the same thing w/ less work.