first attempt
Removed shelter. Added seperate list functions