FLUID-5542: Queued DataSource

Added a Queued DataSource that can combined with different requestQueues to synchronize, throttle, and debounce requests to a DataSource.

http://issues.fluidproject.org/browse/FLUID-5542

This is an extension of the work started in https://github.com/fluid-project/metadata/pull/43
This isn't a very clear summary - "particular functionality" could refer to anything. Should emphasise that the purpose of the dataSource is to express indexed access to state. The explanation of directModel as "summary of the contents of a URL" also conflicts with this. Should point out that REST/CRUD is just one possible embodiment of a DataSource.