final edits for linklist assignments

Elizabeth and I made improvements on the code: 
* adding self __str__ method instead of defining a print method.
* Calculating the size at constant time instead of O(n) time
* Added optional next parameter to Node class 
* Empty link list checks on insert and pop methods
Looks like this test was written incorrectly. You should have a Linked List as (5, 7). If you pop twice, the second pop should be 7, not None.