Fix #444 Separate recording logic from the concept of a talk/presentation

- Add filename parameter to load_backend function in RecordingController
- Add metadata parameter to load_backend function in Multimedia
- Change load_backend function in record.py to use default filename when
  recording to file or if no current presentation exists
- Prepare record_name and metadata in load_backend function of
  RecordingController instead of in Multimedia
- Move prepare_metadata function from Multimedia to RecordingController
- Change convenience commands to call load_backend from RecordingController
- Disable Record button and set tool tip when no presentations are available