(build) Better handling of build-targets and dependencies

  * Turned RoboCRISP_BUILD_INPUT and RoboCRISP_BUILD_COMMS into
    user-definable build options.

  * If user has _explicitly_ requested that we build the input library
    and `libevdev` is unavailable, produce an error; otherwise just
    warn and disable `RoboCRISP_BUILD_INPUT`.