Addition of futures to user-added terminal functions to block on further input until previous operation has completed. In dev down the line, the return value of these futures could be used to display elements etc.

BUG=
R=koz@chromium.org

Review URL: https://codereview.appspot.com/52480043