Context-local storage

The `flt_local` type implements the fleet equivalent of thread-local
storage (TLS).  The `flt_local` manager creates an instance of some data
type for each of the execution contexts in a fleet.  Each task can use
the `flt_local` manager to get the instance for the context that it's
running in.  As an example, you can use this functionality to calculate
some computation locally within each execution context (and therefore
without needing any slow thread synchronization), and then as a
post-processing step merge all of the per-context partial results into a
final result.  (You use the `flt_run_after_current_group` function to
cause the post-processing step to execute after all of the partial
computations have finished.)