Fixed documentation.
Don't assume the database has the IDs from the list cache.

When using the list cache, it is possible some IDs won't exist in the database anymore. Rather than assuming that they exist and having 'undef' instead of a valid object in the arrayref that gets returned, drop it (which is what the database engine would have done, had the actual query been performed).
(GitHub #14) Added ability to explicitly declare what fields should be selected.