WIP: #630: Create tests for talkeditor.py following PR #605

Now that PR #605 has been merged, I would like to add some tests for the new functions I created. I will have a better idea of what steps this requires as I start experimenting, but I thought I should create this PR as soon as possible. Ultimately, this should close issue #630 .

Oct. 20, 2014: After some research, I have a slightly better idea of what I need to accomplish. These tasks might change as more information comes along -- I haven't even learned about QtTest yet.

Oct 29, 2014: After further thinking, it might not be worth it to focus on upgrading everything to Pytest just yet. For the time being, I mostly just want to get some tests done. So, I'm putting the Pytest goals on hiatus.

- [ ] Replace the Setup and Teardown functions with a pytest fixture (Hiatus)
- [ ] Adjust existing tests as necessary to conform with pytest style (Hiatus)
- [ ] Refactor talkeditor.py to make it easier to test. In particular, avoid using exec_() method (As of Nov. 3, 2014, it is used in 4 functions)
- [ ] Write test for click_talk
- [ ] Write test for click_add_talk
- [ ] Write test for show_save_prompt
The reason for splitting files is reusability. If you think someone might need to reuse your same widget in another file then make it a new separate file so that they can easily include it without pulling all of your code that they don't need.

What you have to ensure when you create it this way is that your separate file only includes View elements and does not include any logic at all since logic will make it less easy for someone to reuse the widget. Typically talkeditor.py is the logic file which glue's everything together while all the *Widget.py files only contain logicless classes that are easily importable.