Random fit algo

Implement and add unit tests for naive scheduling algorithm. First filter the agents to match the container configuration and than just randomly choose one. 

Constraints for now:
- cpu
- memory
- volumes

@peterbourgon @bernerdschaefer  @jmyounker  @soundcloud/iss  
My intuition is that if any container is unable to be scheduled, the whole job should fail atomically. Can you describe why you want this kind of partial success state?