Added appendAll(List), prependAll(List)
Added null argument checks
Added tests for head, tail and isEmpty