Comments: Fix wrong hash key width computation in presence of comments

Before this commit, computed hash key width included comments. This is
wrong, because:

  * If there is |comment_before| on the key, it is emitted on a separate
    line, which means it doesn't influence key width.

  * If there is |comment_after| on the key, it causes the entry to be
    emitted as multi-line and it is itself emitted after the arrow,
    which means it doesn't influence key width.

This commit fixes the hash key width computation to ignore comments. It
also makes sure only the last line of the key code is considered.

Fixes #28.