cleaned up aggregation initialer API
Finished exposing the internal state of SearchDescriptor and all of its related classes so that you can now use the fluent as well as the initializer syntax