Test case and fix for shlex.split unicode bug

When operating on a unicode string in python 2.6, shlex.split returns
a result that does not work with the file constructor.

To reproduce this requires a task include that is templated (this is
because the templated string is a unicode result, whereas a non-
templated string is a non-unicode string)

    [will@centos6.3] $ python
    Python 2.6.6 (r266:84292, Sep 11 2012, 08:34:23)
    [GCC 4.4.6 20120305 (Red Hat 4.4.6-4)] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import shlex
    >>> shlex.split(u'abc')
    ['a\x00\x00\x00b\x00\x00\x00c\x00\x00\x00']

    [will@fedora17] $ python
    Python 2.7.3 (default, Jul 24 2012, 10:05:38)
    [GCC 4.7.0 20120507 (Red Hat 4.7.0-5)] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import shlex
    >>> shlex.split(u'abc')
    ['abc']

The proposed fix (coercing the include parameters to string before the
shlex.split) may not be ideal but it does fix the bug for my test case.
Enable virt module to work with different libvirt connection uris. This allow to work with all libvirt supported VMs.
Merge pull request #2616 from victorcoder/devel

Enable virt module to work with different libvirt connection uris.
Merge pull request #2620 from willthames/shlex_split_bug

Test case and fix for shlex.split unicode bug
Typo in docs
Fix Jinja2 filter plugins initialization

_get_filter_plugins() checks FILTER_PLUGINS against None hence
the latter should be initialized to None.
Merge remote-tracking branch 'upstream/devel' into riak
Don't set the item variable as eager template replacement will over-replace the variable as an empty string.
Playbook + with_items was an undocumented feature that was causing problems because it would
evaluate and replace '$item' with ''.  Really it doesn't make sense to include multiple playbooks
via a loop variable, as you can do this with task + with_items already (and it's a simpler code
path).  Given this is undocumented, this removes that feature, and we'll consider next how to
also add 'with_items' support directly to roles.
Add base64 encode and decode filters to templates
Fix some items related to playbook includes and indentation.
Since we removed the (undocumented) playbook include + with_items code, fix the tests to
compensate.
Allow jinja2 evals that produce lists to be used in with_items.  Ideally want something a bit less heavy
than the eval here.
Use safe_eval vs eval.
Enable usage of when_set within new eval system.
Style fixes so "make pep8" is clean.
Allow $foo and {{ bar }} to be used on the same line in playbooks.
Use Jinja2 strict undefined in string templating to allow the default filter to be used.
Add code to flag legacy templating like $foo.{bar} as deprecated in favor of Jinja2 {{ foo.bar }} so we
can remove the legacy system at a later date.
Allows Jinja2 that starts a YAML line to not cause a syntax error.

Technically this isn't quite valid YAML when this happens, so we make it valid.  This means that if a future commander
API allows save/load it should make sure it does similar processing.