added ability to pop off first element called first()