Improve logging support

This commits improves logging framework support in the framework.
Firstly it ensures that the Core API only uses slf4j and explicitly
excludes any log4j dependencies (which we get transitively via ARQ).
This means those using the Core API directly can now use their preferred
logging framework.

Additional usage of slf4j loggers has been added to various parts of the
Core API so that additional info will now be logged for some errors

As part of this commit various dependencies managed by the parent POM
were tweaked and Maven plugin versions updated