[views] add tooltip text to all buttons

Motivation: button labels can be later replaced with pictographs.
organize route handlers into several files
do not avoid using `self` in `instance_eval` block
use functional style