Finally finished the core of Backpack 2.0.

This required a complete re-thinking due to some massive Bukkit
limitations. I'll discuss briefly how the core now works.

- By default, players do not have a backpack anymore. This is granted with
  the backpack buy command (which will come in the future).

- Backpack objects within the storage system are never unloaded except for
  two situations: server stop or someone with permission running the
  backpack remove command. If the latter is performed it leads us too...

- Backpacks are cleaned up (files) if they no longer have an object in
  memory. This only occurs during a server session so it would require
  someone with permission removing their file.

- All inventory actions update the memory but all backpacks are updated on
  a schedule. By default, all backpacks with dirty states (they changed
  something) will save every 5 seconds. While I will leave this
  configurable, bear in mind anything higher opens the possibility of
  dupes.

- Lastly backpacks are only loaded from the filesystem once per server
  session but saved many times. This shouldn't be a huge hit to any SSD
  equipped servers out there.

I feel these core changes are the best compromise between dupe preventions
and keeping performance reasonable.

Signed-off-by: Chris Sanders <zidane@outlook.com>