Added basic functionality of smart pointered list