Some additions for more flexibility, better defaults.