Added a basic implementation of a linked list with tests.

 * Unit tests for a basic implementation of a linked list.
 * Implementation of a linked list that can add to the head and tail
   of the list and remove from the head and tail of the list.
Merge branch 'basic_linked_list' into develop