add helper, guard, etc
finish layout and routes