Squashed 'docs/source/_themes/' content from commit 21e875d

git-subtree-dir: docs/source/_themes
git-subtree-split: 21e875d3a53ce897089ad690d897252f6063349d
Merge commit '94c258077e4b0870baa1ffd3350cedd3d1dd7159' as 'docs/source/_themes'
Refactor recording api methods and fix logic

Refactored code of recording api setup, teardown, and
endpoint functions.

Changed Multimedia current_state enum from ints to strs to make some code
in recording api cleaner. Changed a test in test_multimedia.py that
broke as a result.

Fix to recording api logic determining next_id.
Fix to test_server.py teardown to undo patching to media_dict
Flattened if/then nests, removed unnecessary int casts
Fixed off by one error, code cleanup
Restructured try/except block for recording setup
All blueprint teardown code now automatically called from server module on server teardown