List<> implementation finished and tested