Fix #521 Modifying a talk using the details view hides the save button

- Enable Save Button only when an input field is modified by calling function
  enable_save
- Disable Save Button on init, and when input fields are autofilled or
  cleared
- Allow Save Button to be used for updating existing talks and adding new ones
  by calling function add_or_update_talk
- Edit docstring for function unsaved_details_exist
- Add docstrings for update_talk and create_presentation
Fix #537 Translations do not work for RecordTool and ConfigTool

Calling self.app.installTranslator seems to allow the translations to go
through to the 3 apps.

Signed-off-by: Thanh Ha <thanh.ha@alumni.carleton.ca>
Update translation files

Signed-off-by: Thanh Ha <thanh.ha@alumni.carleton.ca>
Update en_US translation file strings

Signed-off-by: Thanh Ha <thanh.ha@alumni.carleton.ca>
Update resources

Signed-off-by: Thanh Ha <thanh.ha@alumni.carleton.ca>
Switch to pytest as our test runner

http://pytest.org/ for more information. Old tests done in the
traditional unittest style will continue to function.
Revert "Close #496 Set travis git clone depth to 1"

The problem with using git clone depth 1 is that if the contributer
pushes multiple commits in short succession before Travis is able to
kick off a build. The build will fail due to being unable to find the
commit. This is because Travis checks out a branch and then checks out
the exact commit. So it is possible to get into a situation where the
latest branch is newer than the commit Travis is trying to build
against.

This reverts commit 217a887c2341ffa4bf12e7fc29bbf6335436ae5d.
Add *.egg/ directories created by pytest

Signed-off-by: Thanh Ha <thanh.ha@alumni.carleton.ca>