adds a configure function to override defaults