Major commit: Bug fixes. More tooltips added.

* The playheads on the timeline now should be functioning correctly. The
current time playhead which moves along every second now should only be
shown when event playback is occuring. If playback is paused the fixed
playhead is shown. The moving playhead will resume when you click play.
I've also tidied up the way the playheads are toggled - nothing major -
just a lot tidier.
* Tooltips added to some more elements providing visual feedback on what
certain elements do for new users.
* stopPlayback() function amended so it doesn't empty #monitor-streams
* Bug fix: Updated old code that wasn't adding monitors by the correct
ID. It was using a traditional pointer variable i and incrementing it,
therefore this could lead to the wrong cameras being added. This also
lead to data type inconsistencies in chosencameras which was causing the
sporadic spawning of extra monitors during playback.
* Removed some old type conversion code. Hopefully this isn't needed as
IDs chosencameras and cameras should always be strings.
* Moving between live view and playback mode should now behave as
expected. Any selected cameras will be passed through to the new mode.
* Bug fix: Added &rand code to refresh the image sources when going from
playback mode to live view to ensure the live stream are resumed
* Bug fix: Stopped the timeline from being activated in live view mode
when you remove a camera from the view
* Bug fix: Fixed a bug where the code would check if any events needed
to be played even when you were paused