Added functionality to influence enabled extensions for candle and light

This allows loading of wix extensions, such as WixUtilExtension, which we need to register an event source
Soooo.... I really don't like this pattern. I feel like the user should be able to specify an array, list, or single value if he or she so pleases. We can handle that logic on this end. Could we do something like:

```ruby
def wix_light_extensions(*extensions)
  if extensions.empty?
    @wix_light_extensions || []
  else
    extensions = Array(extensions).map(&:to_s)
    @wix_light_extensions = extensions.dup
  end
end
expose :wix_light_extensions
```

Orrrrr... We could take the "additive" approach:

```ruby
def wix_light_extension(name)
  unless name.is_a?(String)
    raise InvalidValue.new(:wix_light_extension, 'be a String')
  end

  wix_light_extensions << name
end
expose :wix_light_extension

# Later, in a public, but unexposed method:
def wix_light_extensions
  @wix_light_extensions ||= []
end
```

Usage:

```ruby
package :msi do
  wix_light_extension 'WixUtilExtension'
  wix_light_extension 'OtherWixUtilExtension'
end
```

And then the packager would use the `wix_light_extensions` method internally.