add method getStartTimeCode to timecode module
timecode.parse always returns an array
refactor chapter tab to chapter module

The chapter module returns instances of `Chapters` and expects the player and
the player parameters in the constructor.
The chapter module has its own update method that needs to be called whenever
a timeupdate event occurs.
Add method `addEventhandlers` for adding click event handlers for the chapter
table entries.
All methods and functions were refactored for maintainability were possible.

Add method TabRegistry#update that is called on timeupdate of the player.
This is a hook for modules to get updates. Will later be replaced by
Timeline#update.

Add method TabRegistry#addModule that registers the listener as well as
the tab of the module within the TabRegistry.

logCurrentTime function is automatically called upon timeupdate.

The player module now calls tabs.update on timeupdate.
All old chapter handling code is removed or commented out. The chapter
integration is adapted for the chapter module.
One call to window.location was replaced with setFragmentUrl.
Merge branch 'tabs' of github.com:podlove/podlove-web-player into tabs