fixed bug: key['success'] error when schedule return

based on return to judge if the schedule is success execute
Add initial support for routes
win_pkg improvements

latest_version - return provided package name, not full name
upgrade_available - implement
list_upgrades - implement
version - handle full name and short package name. Return '' for each
named package when given a list even when none are installed
install - check version when looking for existing install (pkg.latest
state then works). Always return a changes dict, even when there are
errors (the state now fails instead of raising an exception).
Fix kwarg parsing: allow only python formatted kwarg names, apply yaml to value only, allow all args to be passed as kwargs
Add support for network.routes

Network routes will iterate over each defined route for an interface name and will build a static route file for that interface.
```yml
eth0:
  network.routes:
    - secure_network:
      ipaddr: 10.2.0.0
      netmask: 255.255.255.0
      gateway: 10.2.0.1
    - HQ_network:
      ipaddr: 10.100.0.0
      netmask: 255.255.0.0
      gateway: 10.100.0.10
```
cleaned up and finished kwargs parsing upgrade, added et fixed doc
Sync compatibility between network state and ip module
Merge remote-tracking branch 'upstream/develop' into develop
Merge branch 'develop' of github.com:bretep/salt into develop
pep8 whitespace fixes
apt.py: remove noisy (and redundant) log messages

There are log entries in __virtual__ which are redundant and end up
being written to the log over and over again if certain python modules
are not present, irrespective of whether or not the features which
require these python modules are being used.

They should never have been in __virtual__ in the first place, since
there are already notifications in the functions which make use of these
modules, when those modules are not present.

This commit removes them, which should get rid of a lot of noise in the
minion log.
Merge pull request #5528 from ageron/fix_kwargs

Upgrade kwargs parsing
Merge pull request #5526 from hulu/pep8-more

pep8 whitespace fixes
Merge pull request #5529 from terminalmage/issue5431

apt.py: remove noisy (and redundant) log messages
upstart: store runlevel in __context__

This commit stores the current runlevel in __context__ to avoid repeated
calls to 'runlevel /run/utmp'. Fixes #5425.
Merge pull request #5531 from terminalmage/issue5425

upstart: store runlevel in __context__
Port mod_repo and helpers from yumpkg.py to yumpkg5.py, Fix #5282
add downgrade support for apt

This commit fixes #4798 by checking to see if the targeted version will
be a downgrade, and if so, setting a flag that, if True, will cause
--force-yes to be used in the call to apt-get install.
Add examples of targeting nested grains
Add examples of targeting nested pillars