Toggles V3

- Improved API (allows usage of `myToggle.toggle(state)`)
- Misc bug fixes
- More maintainable code
- `myToggle.active` property which will reliably return the toggle state
- No longer using CSS animations - smaller + easier to work with code