All the implementations for this subsystem.

Some big changes on the structure and design of the subsystem. This is a
working version. Move on to testing.