add documentation into the core module (not finished yet)