Move user API to primary document format

closes #2593

- added new format to user API methods
- changed all places where the user api was used
- updated tests and added more coverage
- little bit of cleanup in utils/api
Merge pull request #2682 from ErisDS/issue-2593

Move user API to primary document format
Adding docker for trying out docs generation

issue #2622

- yes 'docks' is a silly directory name but it's easier to remember which is which than docs and docs2