New arraylist approach with TDD