Added shiva.indexer.CacheManager class
Added shiva.lastfm.LastFM class

This class is a wrapper around the pylast lib, which encapsulates the library's
logic and adds caching.
Replaced --low-ram flag with --write-every

In this big commit the --low-ram flag gets replaced with --write-every, which
receives a number. If that number is 1, no cache will be used, otherwise it's
used to write down to disk and clear RAM cache after that many tracks are
indexed.
Documentation for the --write-every parameter
New indexer structure

The indexer is now a module of its own.
CacheManager stripped out of the indexer

Now it's in an independent file.