API to the library.
All access to the library goes through this module.
This is so we can synchronize access, free up stale memory,
and check for new library entries.
This module understands the allowRestricted flag, which tells us whether the user can/wants
to receive Videos from the restricted sections of the library.