cleanup, use a uri instead of specifying the components as parameters.  add an option to set the safe mode