Split Task into the entity part and the immutable part

This way, it is all slightly easier to understand.
Never assign tasks to executors they can not possibly satisfy
Don't calculate task power costs in DRL

Calculation speedups of ~ 20 %.
Fix the code provided by pull request post the refactor