bootstrap: Submit Callable<Void>s to capture exceptions in jobs

This delays exception propagation, transfering it to the thread that
fetches the result via Future.get(). Futures are collected and tested
for completion in the Bootstrap instance prior to processing incoming
jobs.
util: Add IteratorUtils
util: Add Chain class

A Iterable combinator providing a new iterator which iterates all
elements from all provided Iterables.
util: Add Cycle class

A combinator that will turn a finite sequence into an infinite sequence,
such that when the last element of the finite sequence is consumed, the
next element in the infinite sequence is the first item in the finite
sequence.
util: Add Coil class

A combinator that takes a single element from each iterator in turn,
until no elements are left. If one iterator exhausts before others in
the collection it is simply removed, and elements are taken from the
remaining iterators.
util: Add Bound iterator
util: Add Wrap to transform Iterators to Iterables
efbp: Optimisations through JVisualVM instrumentation