clean up documentation by using napoleon instead of the buggy numpydoc, which threw many false warnings