Delegate updating of seen_at and read_at to AggregatedActivity

When it comes to dates I prefer using the one in UTC.  This is the way ```Activity``` class sets its ```time``` if it is not passed to its constructor. I think that it should also convert any ```time``` passed to it to UTC. More generic approach would be to define and use a setting similar to Django's ```TIME_ZONE```.

Despite the fact that Activity class sets the ```time``` in UTC by default, ```seen_at``` and ```updated_at``` are set to local time using ```datetime.datetime.today()``` which in my case results in a defect.

In order to support backwards compatibility and in the same time to enable users to easily override this behavior, I delegated this responsibility to the hook methods in ```AggregatedActivity``` class.