non-tail recursive version. recursive version with reverseList(head) signature