Improve the robustness of dynamic navigation.

This ensures we always have the correct default state to return to if
users are going backwards in their browser history.
Reorder functions.

OCD update.
Change the URL when navigating the primary dynamic navigation block.

This allows for meaningful URL's when browsing a dynamic block that
doesn't have a set ID.
Remove data-webcomic-dynamic attribute.

Thanks to the new setup this is no longer necessary.
Correct keyboard shortcut functionality.

Ensures keyboard shortcuts work for both standard and dynamic
navigation. Also adds support for specifying keyboard navigation blocks
with the data-webcomic-shortcuts attribute.
Clean up webcomic.php
Clean up transcripts.php.
Unify config section functions.
General code cleanup.

This commit includes no functional changes, just source cleanup. This
includes renanming functions for better consistency, reorganizing class
methods for better readability, and correcting inline documentation
(among other things).