Made using config files much more general, so client configuration can eventually be made