Thinking further about this, I wonder if it should be in the constructor or setup at all. Both require a restart in order to switch to a different file. 
If I move it to the read() method, then the htpasswdFile could be changed to a different one without a restart.Are thee any reasons not to allow this?