Remove and add some cost center annotions for easier profiling.
The new module 'Reactive.Banana.Test.Performance' now contains a benchmark for time profiling.
'withOrder' now uses monomorphic queue.
Specialize `traverseDependencies`.
`EvalP` is now a simple state monad transformer. Significant performance increase.

The task of remembering latch updates and outputs has been inlined into the `evaluatePulses` function.
Use the `pqueue` package for the priority queue.

Yields another significant performance boost.
Reimplement `traverseDependencies` using the queue implementation from `pqueue`.

Testing shows that this implementation is incorrect because it allows duplicate elements.
`DepsQueue` now implements a queue that keeps track of and disallows duplicate elements.
`PerformanceLog.md` logs running times during a coding session.
Turn `EvalP` into a reader monad to avoid lifting `Build` in many cases.
Revert "Turn `EvalP` into a reader monad to avoid lifting `Build` in many cases." because the reduction in code clarity is no longer worth the increase in performance.

This reverts commit cb0fa3675be836206e1436118f0982fb3ad24fd8.