Separate Host->Visit mapping from Visit "holding"

Still adjusting myself to gc-less memory management strategy here. If I
want to refer to my Visits from different perspectives (Host, Path,
Referer), it cannot be through a pointer.

Unless I want to introduce reference counting, I have to have references
that are not pointers. In this case, it's `visitid` which is an
autoincrement `uint`.