Rewrote input so that all bindings live in Input, not the devices