Typed subsystems and documentation added.