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
this is testing if Node class is invoked with and empty parameter which is not allowed in this code. When i tried to invoke the class without a parameter it throw TypeError. So I am doing the test as you mentioned though..? is there more relevant way to do it?