Fetch a list of UIDs from the IMAP server

This doesn't really _do_ anything with the UID list, but I guess at
least it manages to fetch said list from the server.  I think I've got
a reasonable idea of how I'm going to implement a log now, though!
Convert mhimap::string_iter to mhimap::vector_iter<std::string>

I'm going to have a bunch of iterators that are really just wrappers
around a std::vector.  While I could just expose the vectors as part
of the public MHIMAP API, I don't want to do this because it's
probably not best practice to always fetch entire lists from the IMAP
server into memory -- instead I'd like to have some of these iterators
do something more interesting like parse the IMAP input a line at a
time.

That said, for now I'm just going to do the whole "dump everything"
strategy because I don't want to deal with all the complicated bits of
handling IMAP state.
Add mhimap::folder{,_iter}

I used to just return the folder list as a list of strings, but that's
not really type safe.  This instead returns the folder list as a list
of folder objects.  While these currently just contain strings, the
idea is that I really want these to contain a whole lot more -- the
UIDVALIDITY, for example.

In an ideal world, the folder class itself would be responsible for
taking hold of the IMAP connection for a bit and parsing the output of
a SELECT command.  I think that is going to require a bit more work,
though...