Decoupled recording api from server.py

Broke out recording api resources, and setup/teardown logic from server.py into its own Blueprint.
Implemented decorator in server.py module that carries out http_response object creation and
error handling. This decorator is to be used by all endpoints.

Updated tests to preserve functionality.

Misc logic and style fixes.
Add click_talk method
Fix #501 Warn user about losing new talk info

With these changes, the user is warned when they select an existing
talk or create a new talk when the talk they're currently editing has
unsaved changes.

Fix #501
Close #605
Add functionality to save/discard/cancel

Change options to Yes/No/Cancel
Ensure that NEW talk is selected after user selects 'save'

Remove unused dependency QModelIndex
Add functional click_add_talk method and show_save_prompt method

Remove excess whitespace