Added support for dynamic login

This load the loginURL first, looks for the form. and then pulls any hidden fields. Which allows support for things like csrfmiddlewaretoken.