Improve handling of unmapped dependencies

Previously, all unmapped dependencies were treated equally. With this PR a distinction is now made between unmapped direct dependencies and unmapped transitive dependencies. By default, the build will fail
in the event of one or more unmapped direct dependencies but unmapped transitive dependencies have no effect on the build's outcome. This behaviour can be overridden via the `springioPlatform` extension's `failOnUnmappedDirectDependency` and `failOnUnmappedTransitiveDependency` properties respectively. For example, to only fail on unmapped transitive dependencies:

```
springioPlatform {
	failOnUnmappedDirectDependency = false
	failOnUnmappedTransitiveDependency = true
}
```