Thanks Marc. Will change that to sue an exception then. Sounds like a
best-practise to get used to.
Not sure what you meant by 'bubble' user. I was thinking that on
login, the user object would be created and would hold simple details
about the logged in user, so, for example, on each screen, at the top,
or something, there's a message: 'Logged in as: Craig Lister', or
something more useful than that.

Can't think of anything, but the
idea here is for me to have a persistant object that I can refer to at
any time, with maybe an Update function, which maybe got used as an
Auditing function, logging the history of the user. "Logged in",
"Updated an account", or something like that. Scetchy idea, but just
trying to use different ideas to learn.
So, when you say 'bubble user', do you mean what I am trying to do? A
user object that is basically there all the time that I can then get
user.ID when ever I want it, or maybe user.LogEvent("Logged in
successfully"); type stuff?