Hey Vasan - welcome to Lift!
(1) With regard to checking authentication information, does this information come from an HTTP header? Or something else? In any event, adding a handler to LiftRules.earlyInStateful would probably be the ticket. From there you can check declared SessionVars for whether or not the app currently knows about a logged in user for this HTTP session. If that check fails, you could then do whatever you need to do to on the Lift side to set up the user.
I don't think I can provide a bunch of guidance on (2) except to say that I've found Lift's built in persistence stuff confusing, so I tend to use the
Slick library for DB interactions right now. That said, there are tons of people on the list who can provide help with Mapper and Record (Lift's libraries for DBs).
I also don't know of any pre-built pagination snippets. I tend to roll my own since the requirements each time I do it are subtly different. You might find Comets and their ability to re-render pieces of pages on the fly useful.
You may also be interested in a few projects I've open sourced that use Lift.
AnchorTab is an old one that I don't maintain, but may provide some useful examples.
Judicial Manager is one I'm currently building out.
Cheers,
Matt