New UI spec: disable search button when invalid input

The details are in the new tests.
Traditional engine: disable search button when invalid input
Bacon engine: disable search button when invalid input
RxJS engine: disable search button when invalid input
Merge branch 'exercise'
Describe the purposes of the demos