Add/update logging;

- Add logging for some more activities.
- Only log the date once every second.
- Minor message changes for existing log messages.
Add more documentation.
Move exceptions to separate file.
Update exception message.
Trigger `:_standalone_` event for non-interactive applications.
Update tests.
Separate rendering and clearing log messages.
Tidy up Keymaps and KeymapValidator.
Simplify log output for debounced and throttled events.
Remove redundant @api tags.
Determine truthiness of value and provide convenience bang method.
Validate attributes on each of the repositories.
Add load path stuff so that pry works correctly.
Update documentation.
No longer required.
Whitespace.
Minor changes.
Only log when focus changes.
Make #virtual_y and #virtual_x accessible.
Fix #virtual_y and #virtual_x, add #to_h.