Anorm refactoring around `as` function