A custom queue class