started adding documentation and introducing new modules