Merge branch 'ghc-7.6' into profiling-7.6
Support for tracing "tasks"

The idea is to trace execution time using the event-log and map it to
a DAG of tasks with dependencies.

This is pretty much just proof-of-concept. ToDos:
- Save task in TSOs instead of caps. Right now thread rescheduling would
  make everything look very bad indeed.
- The dependency relation needs to capture *when* the dependency applies.