cylc suite-state: validate inputs and improve documentation

This pull request makes the following changes to cylc suite-state as a result of user feedback/errors/confusion encountered:

 * Only accepts valid states or trigger conditions
 * Documentation (cylc help suite-state) now tells you what conditions/states you can supply
 * Informs the user if there are no results to display (printing this to stderr to avoid any problems encountered by those grepping and formatting stdout results). N.B. this is not an error so still gives a rc of 0.
 * Reminds the user that they still need to provide a cycle time even in a non-cycling suite to use the 0|1 rc functionality.
 * Poller will now tell you what task state it is polling for/checking rather than printing 'requested condition'.