One-step closer on the loaders' api unification.
This uses most of the loader-core's mechanism except for the queue
part. I kept the git loader's state logic (which stays consistently
hidden in the fetch_data and store_data methods).
What do you think?