Add stateful buttons to give feedback to users.

Resolves #63
Disable Run button when compiling; display spinner.

Resolves #210
Add support for require calls

Resolves #147