Changes related to task cancellation

Changes:
* Scheduler will NOT allow update of running but non-cancelable tasks
* proper handling of updates of running and cancellable tasks (cancel, update config, restart)
* EndState and eventing reflecting what tasks "knows" (ie. is unaware of cancelation)
* Future.cancel(true) will now behave as documented: with true will interrupt the thread if task being canceled is not cancelable (but doing that is dangerous)
* logging related improvements (basically https://issues.sonatype.org/browse/NEXUS-7802)

YUM related fixes:
* YUM tasks made cancelable, by working into unique temp folder (to not interfere with each other), and as last step, moving in the data if not canceled

CI
http://bamboo.s/browse/NX-OSSF444
To sum up: context will ALWAYS have a trigger, and scheduler.getTrigger() MAY return null in case of "durable" jobs, but we don't use durable jobs for NX tasks.