refactor lists; add deque container