Prevent StringIO from showing up in salt -d
mimic the vm_info command to make it able to get state for all VMs
Added layman module for layman tool.

Layman is a third-party package repository (overlay) management
tool for Gentoo.
Added import for salt.utils to layman module
Added import of salt.utils to gentoolkit.

Virtual was always returning false do to missed import
Added module for eix tool (for Gentoo)
Added functions for sync and update to eix module
If eix is available, run eix-sync for pkg.refresh_db for Gentoo

If eix is installed call eix-sync since eix-sync calls
emerge --sync but can also sync overlays (via layman). If eix is not
installed, fallback on emerge --sync
Squashed commit of the following:

commit a213364f96c6afbce7d9d357e806bb511d331e1c
Merge: 8d169c5 7bbe8f6
Author: David Boucha <boucha@gmail.com>
Date:   Fri Dec 28 23:05:59 2012 -0700

    Merge remote-tracking branch 'upstream/develop' into add_win_repo

commit 8d169c5688417967b15705c073a66fe57ea54ad6
Author: David Boucha <boucha@gmail.com>
Date:   Fri Dec 28 23:02:41 2012 -0700

    Return false if package not available

commit 29998e44bbccab9c00d8fb02d24bdf94d8a6fadf
Author: David Boucha <boucha@gmail.com>
Date:   Fri Dec 28 22:52:07 2012 -0700

    Check for non-existing package

commit 26da073d4390b1ebb613682e6981d4c4072a4662
Author: David Boucha <boucha@gmail.com>
Date:   Fri Dec 28 18:13:58 2012 -0700

    fix getting latest version

commit a418c15cb2138ae83d7e6c759b1b10db42500883
Author: David Boucha <boucha@gmail.com>
Date:   Fri Dec 28 13:03:28 2012 -0700

    fix if statement bug

commit 574f1a97311a1166af59fc7c59b1221f2c67e06a
Author: David Boucha <boucha@gmail.com>
Date:   Fri Dec 28 12:50:47 2012 -0700

    better targetname

commit d839da67be9fb95b04e6a86a88113eefc946e7c2
Author: David Boucha <boucha@gmail.com>
Date:   Fri Dec 28 12:21:21 2012 -0700

    force the clone and update

commit e2ede69b1e5c05037f68bc43bd6396c5d2e36fe1
Author: David Boucha <boucha@gmail.com>
Date:   Fri Dec 28 12:17:04 2012 -0700

    Fix bug where only one package is available

commit 84661cc38534a31d6cc5c61b1e4738bcb12cb8d4
Author: David Boucha <boucha@gmail.com>
Date:   Fri Dec 28 11:55:22 2012 -0700

    Add support for http, https, and ftp locations

commit f42740f8ba9dcb242fb4bdb4ee059aa0c77db0f6
Merge: 80bffa7 8c6d403
Author: David Boucha <boucha@gmail.com>
Date:   Fri Dec 28 11:48:11 2012 -0700

    Merge remote-tracking branch 'upstream/develop' into add_win_repo

commit 80bffa7329d01f1a7cb66e83a4c80324302061a4
Author: David Boucha <boucha@gmail.com>
Date:   Fri Dec 28 11:47:10 2012 -0700

    Add ability to download and include git repo

    package definitions

commit 9992a2e175a42e7968781ae086ffc663f3d7f98d
Author: David Boucha <boucha@gmail.com>
Date:   Fri Dec 28 11:46:38 2012 -0700

    fix keyerror bug

commit ae511c4c00e2c9594b269c664ff1973eaf2a0b14
Author: David Boucha <boucha@gmail.com>
Date:   Fri Dec 28 10:51:34 2012 -0700

    Add windows pkg repo list. Git repo capability

commit 2674a662dfbdf6f4feef76c665771f5cce1e4e86
Author: David Boucha <boucha@gmail.com>
Date:   Fri Dec 28 09:35:20 2012 -0700

    No longer check for non digit keys.

    The second level of the package description will now always
    be the package number.

commit 66203fc7dbe6816779e4a5165a4bacfa92da5dc5
Merge: 2619589 d6dec7e
Author: David Boucha <boucha@gmail.com>
Date:   Fri Dec 28 09:01:37 2012 -0700

    Merge remote-tracking branch 'upstream/develop' into add_win_repo

commit 26195898af237402923e3250783688e2292d3a32
Merge: 5e25be9 3499f65
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 27 17:41:07 2012 -0700

    Merge remote-tracking branch 'upstream/develop' into add_win_repo

commit 5e25be9cf6a92cdb620ac212692e6037d1dab7bd
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 27 17:38:34 2012 -0700

    return version and full name

commit d491efde84ea8220c9bb03d54dc7b073968bfe0f
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 27 16:57:31 2012 -0700

    Install specific package version

commit 053d1901f3c6e18f493ebba26cfbe82d8000a473
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 27 16:28:19 2012 -0700

    better key check

commit dcc571ea35d4bd2a5f2f7d7033e24aaf1ca263b2
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 27 16:23:57 2012 -0700

    Update to new repo layout

commit 701fedcd353a3205c0243c34ec8701c046470080
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 27 16:08:52 2012 -0700

    use os.path.expandvars to get the correct pathnames

commit 004fc03f84d5b80b7b3bb67c53493777f6392b8b
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 27 15:47:07 2012 -0700

    update installer

commit b6d5ffaf13de49520cfb1aa9f09d7fc6714d38ae
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 27 15:08:17 2012 -0700

    Get latest version of a software package.

commit 9261ddf697d8c9607a37d631023d139b5e30e951
Merge: 8f3bfc1 11f5089
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 27 13:55:05 2012 -0700

    Merge remote-tracking branch 'upstream/develop' into add_win_repo

commit 8f3bfc14c2c27ff6cd7a3b74a587d60c66be6ebd
Merge: b517434 c197152
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 27 10:42:20 2012 -0700

    Merge remote-tracking branch 'upstream/develop' into add_win_repo

commit b5174349792fdcba123d43bfbe012c2433ab6a9d
Author: David Boucha <boucha@gmail.com>
Date:   Fri Dec 21 11:59:30 2012 -0700

    Some logic fixes

commit e5007f739386ed8a6c7a6d3e21f4fffefb68d573
Author: David Boucha <boucha@gmail.com>
Date:   Fri Dec 21 10:50:50 2012 -0700

    purge package equals remove on windows

commit 1cdb50fc48720bc3928f249c7281007a8cfc95c3
Author: David Boucha <boucha@gmail.com>
Date:   Fri Dec 21 10:43:24 2012 -0700

    Check for direct installer location

commit 1f14ac1b806225b7125d407c594ff9378f3d46b1
Author: David Boucha <boucha@gmail.com>
Date:   Fri Dec 21 10:31:37 2012 -0700

    More fixes

commit 5fe829ed4df29116310d1bd19a2fb40e1817c975
Merge: a27f428 8df22ce
Author: David Boucha <boucha@gmail.com>
Date:   Fri Dec 21 10:21:17 2012 -0700

    Merge remote-tracking branch 'upstream/develop' into add_win_repo

commit a27f42835159c03516bf006850cf09884a588af7
Author: David Boucha <boucha@gmail.com>
Date:   Fri Dec 21 09:54:21 2012 -0700

    Add win_pkg.remove() code

commit 56829e8239ee88f2672d1f749ef3b3765d190604
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 20 18:06:04 2012 -0700

    remove debug prints

commit ab326554b1d8851fed064231d4b9d090c9d0f6ed
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 20 17:46:02 2012 -0700

    quotes around windows installer with spaces in name

commit 49fb4043f353f4d28c9e6ad1b4e005922c7722d4
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 20 17:41:11 2012 -0700

    iiiiiii

commit 0245dc47c56de7e43a5d85e850a296309e580963
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 20 17:27:31 2012 -0700

    lkj

commit 26645963de84149c51ac5cbaef91148e94585da0
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 20 17:25:16 2012 -0700

    try again

commit ab9a5cd249c7e1558a3c87b6b4ba3933ddd043ca
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 20 17:21:41 2012 -0700

    lkjljlkjl  PLEASE work!!!

commit c024bc956dbb05a0617454d17b8b3df8d34f949a
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 20 17:15:40 2012 -0700

    lkjlkj

commit 3eb610e1fef7a1efed021bc71ba48a89ec2af23b
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 20 17:08:21 2012 -0700

    stuff

commit 59f9dd76f60799db4b68d8ccd10854a2ad01f930
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 20 17:02:34 2012 -0700

    another fix

commit 1dfe105829cbddcf37d0e029b6f8351c72a58269
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 20 16:59:35 2012 -0700

    moar bug fixes

commit acbaf246b1ddcd8a309fe0d6416ce61a0fe34f8b
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 20 16:48:58 2012 -0700

    fix moar bugs

commit 5731af3eb9b2446d6a1466918fceaa08b3331b9e
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 20 16:44:46 2012 -0700

    fix it

commit 532abe6b4c8691b0c67078ac76490cd83e602c9b
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 20 16:40:04 2012 -0700

    First try at installing windows software

commit edc05e3239c94d3b143ab63df661995782352766
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 20 15:45:56 2012 -0700

    try to avoid keyerrors

commit 216734db63de5e964e2c79b3eae2a203780e1eaf
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 20 09:48:02 2012 -0700

    fix  typo

commit dc20f405e13e06dd0f6322f1c1275e2d2bf4ba57
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 20 09:45:27 2012 -0700

    fix available version

commit 41669aca4f5d1f6ca4d0b089ba5753a3554a0c3e
Author: David Boucha <boucha@gmail.com>
Date:   Thu Dec 20 09:32:17 2012 -0700

    Start filling out availabe version()

commit 3898f00202a427bb70c7e33dfd8b6eee1e9bbecd
Author: David Boucha <boucha@gmail.com>
Date:   Wed Dec 19 15:49:23 2012 -0700

    change cache file extension, update refresh_db()

commit 600696ea3e0638331f1d71fb294f982652d73799
Author: David Boucha <boucha@gmail.com>
Date:   Wed Dec 19 14:16:10 2012 -0700

    add default win repo location

commit f9fdb11efd434e4d9df2ab5b62daf6042d770230
Author: David Boucha <boucha@gmail.com>
Date:   Wed Dec 19 14:12:15 2012 -0700

    rename location of win cache file on master

commit a260eaddacbb22c4b3ae391f18cf19ef299de3d8
Author: David Boucha <boucha@gmail.com>
Date:   Wed Dec 19 13:40:27 2012 -0700

    Unify the name of the windows repo cache file
Updated doc for ebuild.pkg_refresh_db
Added eclean_dist function to gentoolkit
Fixed ebuild.refresh_db to avoid KeyError

Check for eix.sync key in __salt__, run eix.sync if exists,
run emerge --sync if it does not.
`W0142` added to `.pylintrc` disabled checkers.

`W0142` is triggered when `*` or `**` magic is used, for example:

```python
my_func(*args, **kwargs)
```

This PyLint checker is now disabled since we use it quite a lot, and, in fact, take advantage of this magic.
Replaced OS environ checks with `salt.utils.is_windows()`.
Formatting of eclean_dist function in gentoolkit module
Add `__ret__` to `additional-builtins` config var on `.pylintrc`. Refs #1775.
Try returning a list for layman.list_local
Fix undefined variable on `salt.returners.redis_return`.
Correctly split the output for layman.list_local to create a list
Remove color from layman.list_local output