Initial tests and code for List

Simple integration spec that tests adding nodes and checking the size of
the list. Implementation backed by a simple array list.
Adds specs and implementation for List#contains?
Initial implementation of Quicksort

This provides a correct but naive and memory hungry implementation of
quicksort. We always use the first element as the pivot and allocate
external lists to store partitioned elements.