API Login validation

These change the API server so that it can be configured with an optional validator function for API logins. This will be used by machine agents to block agent logins during software upgrades while still allowing client logins (coming in a later PR).

There are 3 commits. The first is just a comment improvement, the second modifies apiserver.NewServer to take a struct instead of a long list of args and the third adds the validation support.

I'm not especially wedded to the "validator" name. Other suggestions welcome.
I'll leave this for now but am making a note to revisit this later on.