first pass at shell bindings

all functions except commotion_up sketched out
Untested.