GuestNo new alerts

Patch 13

- Updates89
 
Patch 13 finishes up the implementation of the attachment manager, covering the replies as well as the opening posts. That bit got delayed slightly.

I've also added eight database indices to hopefully reduce the number of o(n) disasters with huge datasets.

In addition to that, I have greatly reduced the number of allocations in the user agent parser which should help with performance and guest noavatars are now pre-calculated helping that a little more.

I've added a few benchmarks which aren't quite ready for the primetime, but they're helping in finding weak spots in Gosora's performance, so we'll likely see even more optimisations being rolled out in the near future.

I have also fixed a major bug where the second ticker wouldn't always fire due to the Watchdog Resource Manager hijacking it. The Watchdog now has it's own dedicated ticker. Ban expiries should now work as expected once more.

The same applies to other features which rely on the second ticker like the thawer which regulates the topic list cache and the live topic list.

I have also added another unsafe high performance utility function, however I would advise against using it, unless you absolutely know what you're doing and you can keep it's effects entirely self-contained with absolute certainty.

You can find the full changelog here:

https://github.com/Azareal/Gosora/commit/5db5bc0c7e069778b4bcee43785a45740610d89c