Full rewrite of request scheduler