Add heterogeneousAttrsOf option type

It is parameterized by a function that takes a name and evaluates to the
option type for the attribute of that name. Together with
submoduleWithExtraArgs, this subsumes nixosSubmodule.
xmlstarlet: advance version to 1.5.0
Merge pull request #1570 from rszibele/scite

Added SciTE 3.3.7.
add phantomjs to darwin platform
Merge pull request #1673 from pSub/writegood-mode

Add emacs minor mode writegood
Merge pull request #1732 from garbas/phantomjs-on-darwin

phantomjs on darwin
nvidia-x11: bump version and add patch for kernel 3.13
Add i3minator: i3 project manager similar to tmuxinator
NetworkManager: Fix aliases and dependencies

There are two fixes in this commit.

Firstly, I am creating proper symlinks for the Alias= definitions in the
.service files. This achieves the same result as `systemctl enable`, and
I think is preferred over `mv`.

Secondly, `networkmanager-init` now wants `NetworkManager.service`,
along with `ModemManager.service`. ModemManager does not depend on
NetworkManager (according to `systemctl list-dependencies ModemManager`),
thus NetworkManager never got started on boot.
Merge pull request #1734 from ocharles/network-manager

NetworkManager: Fix aliases and dependencies
Reenable efi tests
aws: hardcode perl location
vim ft: address the problem with broken highlighting in big files

It seems Vim needs to be instructed how to scan for the begining
of the multiline statements to correctly and efficiently highlight
lanuages.

See :help syn-sync-maxlines
Add bcdoc pythonPackage
Add rsa pythonPackage
Update pythonPackages.jmespath
Update pythonPackages.botocore
Update awscli
Merge pull request #1730 from pSub/logcheck-uid

nixos: add uid for logcheck and only create a user for the default user
Add Template::Plugin::IO::All