Add port redirection option for networking with slirp.

Port forwarding allows the emulator to host servers that can be
accessed from outside the virtual network.

The code for parsing the preference option "redir" is adapted from
qemu code. The rest was already implemented.
Fix compilation error on OS X.
Merge pull request #13 from clehner/master

Port forwarding in slirp
Partial implementation of sparsebundles; still needs Info.plist parsing
Full sparsebundle implementation
Add to `make links`
Basilisk deserves sparse bundles too!
generically search for disk types
Generify vhd, too
Set tty raw mode when using a pty.
Merge pull request #19 from landonf/landonf-pty-fix

Set tty raw mode when using a pty.
Fix case sensitivity of MinGW basetsd.h header when compiling inside Linux.
Ensure ROM is above RAM in Windows.
Fixes black screen on newer versions of Windows.
Fix spacing
Linux works!
Merge pull request #20 from dougg3/master

Fix Windows black screen problem
sparsebundle: Minor fixes

- Allocate memory in disk_sparsebundle() constructor
- Constify constructor parameter
- Be careful with invalid fds
sparsebundle: Remove old TODOs
sparsebundle: Use pointers to member functions
sparsebundle: Don't write zeros in unallocated space

Also close files when we're done with them.