[WIP] Updates for 0.4 Release

Incorporates GH-36 from @Gwayaboy.

todo:

- [x] Remove MVC dependency that was added to core code for html controls
- [x] Change ElementWithWait to Element and TryGetElement to OptionalElement (and ensure it has waitInSeconds parameter) (this would include the change in GH-38)
- [x] Ensure all waitInSeconds params default to 5 seconds
- [x] Change html controls to use autofac registration source and get rid of interfaces that are just for tagging to remove confusion
- [ ] Document the breaking changes (and possibly introduce a few methods / classes with [Obsolete] until we hit 1.0
- [ ] Fix for GH-42
- [ ] Anything else we want for 0.4 from GH-41

Let's try and make this the last HUGE release. Now we have CI we can hit the green button regularly for small changes and it doesn't become so painful to release!