basic command queue implementation