Fix plugin management with Jenkins restart

  - change plugin managent logic from per-plugin management to plugin set
  - for plugin set management add two parameters:
     * jenkins.client.plugin_remove_unwanted - to remove plugins not listed
       in jenkins.client.plugin
     * jenkins.client.plugin_force_remove - to forcible remove plugins
       including dependants but taking into account dependencies of installed
       plugins
  - update state waiting for jenkins availability
  - change error catching in API crumb getting to not fail on 50x errors,
    to be able to handle exception in state(s)

Change-Id: Ia62af392b30f92c7fdff87ea17fce2cf284d6818
6 files changed