Improments and new features

This pull will be about taking where the functionality was and re-writing it to be as tight as possible while adding new features talked about.  

- [ ] Create option maps for all default extensions
- [ ] Set up search with new features like provider choice
- [ ] Set up the social channel extension
- [ ] Set up the analytics extension
- [ ] Clean up the framework extension logic
- [ ] Clear out the comments and test code that is just noise