closes #2 Implemented the Document component.