Eliminate some uses of mutable default args

See: GH-2163
Hmm, I'd tend to either use ```None``` as the default and do an explicit ```self.build_options = [] if build_options is None else build_options```, or if we *really* want the attribute to be immutable, I'd do ```self.build_options = tuple(build_options)```.

Again, I'm sort of on the fence.