How would you go about layered authentication? - Theo's Typesafe Cult