[FIX] Hashrate increase on round ends

This should address issues with pools finishing very long rounds where
hashrate statistics suddenly dramatically increased. This was caused due
to both shares and archived shares being added before they they were
deleted from shares.

* adds the proper way to calculate user based hash- and sharerates.
* replaces `UNION ALL` with `UNION`

Fixes #642 once merged.