Update all legacy-style modules

I.e., modules that use "require = [options]".  Nowadays that should be
written as

  {
    options = { ... };
    config = { ... };
  };

Also, use "imports" instead of "require" in places where we actually
import another module.
Get firmware from lib/firmware
types.list -> types.listOf
Add services.samba.nsswins option

This option allows for seamless WINS/NetBIOS name lookup, using
nsswitch.
Merge pull request #247 from bjornfor/wins-nsswitch

Add services.samba.nsswins option
firewall.nix: Don't make missing rpfilter support a fatal error

This makes upgrading from Linux 3.2 to 3.4 a bit nicer.
firewall.nix: Less verbosity
Add support for opportunistic TCP encryption.

Set "networking.tcpcrypt.enable = true;" to enable opportunistic TCP encryption
based on the user-space tools available from <http://tcpcrypt.org>.

Network attackers come in two varieties: passive and active (man-in-the-middle).
Passive attacks are much simpler to execute because they just require listening
on the network. Active attacks are much harder as they require listening and
modifying network traffic, often requiring very precise timing that can make
some attacks impractical.

Opportunistic encryption cannot protect against active attackers, but it *does*
protect against passive attackers. Furthermore, Tcpcrypt is powerful enough to
stop active attacks, too, if the application using it performs authentication.

A complete description of the protocol extension can be found at
<http://tools.ietf.org/html/draft-bittau-tcp-crypt-00>.
modules/misc/ids.nix: add a comment explaining why tcpcryptd has uid 666.
modules/services/networking/tcpcrypt.nix: specify start-up dependencies in systemd style

Thanks, Eelco, for pointing this out.
modules/misc/ids.nix: patch tcpcrypt to use our uid

The default uid 666 exceeds SYS_UID_MAX (499), so it might not be available
anyway.
lightdm: Use xserver.nix environment variables when starting X

This reduces code duplication, but more importantly means that the
DRI modules can be found by X enabling hardware acceleration.

Close #249; the PR also refers to more about DRI modules.
try to fix zfs into initrd