Defer nicklist loading until buffer is opened

Drastically improves startup time for users with buffers that have thousands of users
Further defer nicklist loading -- don't fetch if nicklist is hidden

This also improves/fixes the nicklist emptiness check
Fetch nicklist by buffer name, not pointer

An invalid pointer will crash WeeChat, while an invalid name will not. A pointer
becomes invalid e.g. if the buffer is closed by another client, g-b not updated,
and the buffer then selected in g-b.