Resolve issue #4

login class can now create from or login with a more dynamic
set of inputs and paramaters.

I do not expect for this to cause any conflicts with legacy usage
since it is only made more extensible, without removing
anything.