0.002 release TODO
Require is_set_input() and is_set_output() in GPIO roles