Include and Exclude params on terms agg

```
 __      __._____________ 
/  \    /  \   \______   \
\   \/\/   /   ||     ___/
 \        /|   ||    |    
  \__/\  / |___||____|    
       \/                 
Not ready for review - still working out some kinks, will add review label when ready
```

Closes #1616 - precursor to #1527 

Adds *exclude* and *include* params to the *terms* agg builder

- Add `regex` agg type
  - Add `regular expression` editor
  - Add `RegexAggParam` class
- Change how AggParam classes are loaded (based on type)
  - Updated tests
- Added `label` filter with tests

The label filter was added so I could use the aggParam name as the field label - that filter may be useful elsewhere, and could probably use some extending.
It does, but I needed a way to specify the new *regex* param type, and since it's called a "param **type**", it made sense to use `type: regex` - and to keep it consistent, I changed the other existing type as well. I'm open to other options.