Fixed bugs, can now bind to input directly

Could use a bit of refactoring but it works. Fixed duplicate events bug
(typo). If supercal is bound to an input, it auto updates the input and
triggers a change event.