Better support for using default and allow_* options