Listen to programmatic value changes on input element

Based on pr #9