Implement backend allocator and management command
New module implementing instance allocation to one of the available backends. Allocation is performed based on memory and disk utilization. Statistics for each backend are stored in DB and updated periodically. Allocation can be customized by creating a new allocation strategy and declaring it in BACKEND_ALLOCATOR_MODULE setting.