refactor todos and guestTodos collection so they extend from a common base