Emit `tag::history::update` from tag_view_only_byindex

This triggers awful.tag to update its tag history.

Fixes: https://awesome.naquadah.org/bugs/index.php?do=details&task_id=1217

As discussed on IRC, the C code should not emit this signal (which is
created by awful.tag), but it works as a hack.

This adds screen_getcurrent to get the current screen based on the mouse
coordinates, based on the code from `luaA_mouse_index`, which might be
refactored / use it.