Remove the top-level build script

To make sure we're not using it by accident while figuring out how to do it with
the Rust-based build scripts.
Add the tcod-sys crate

It uses the new build.rs script and exports the headers for libtcod.
Add dependency on tcod-sys

This removes the `ffi` module in favour of the new `tcod-sys`
dependency.
Add a .cargo/config file for binary overrides

tcod-sys/build.rs will build libtcod from the bundled source.

If you want to skip the building process (because you already built
libtcod or downloaded the precompiled binaries), you can point Cargo to
their location using `.cargo/config`.
Add libtcod 1.5.2 source checkout to tcod-sys

The build script will use this to produce the libtcod binary if it's not
specified in user's config.

Here's the specific version we imported:

    $ hg summary
    parent: 214:ff47576c3bdf
     fix compilation on latest mingw
    branch: 1.5.x
    commit: (clean)
    update: (current)
Add the OS X makefile and necessary files

Original instructions and files by Zack Hovatter from:

http://zackhovatter.com/gamedev/2013/11/26/building-libtcod-on-os-x-mavericks.html

Adopted and blogified by Jared "@jaredonline" McFarland with a makefile
investigation and fix by Paul "@pmsanford" Sanford.

Thanks everyone!
Make the build script work

Seems to work on Linux and Mac OS X.
Add the missing Windows SDL libs and upc.exe

These files are shipped with libtcod source and are required to compile
libtcod. Make sure we don't .gitignore them.
Add Windows support to tcod-sys' build script
Fix Travis

Travis no longer needs to download the libtcod binary distribution, but it needs
the dependencies to build libtcod.
Update the documentation

This mostly describes how to use tcod-rs with the new build scripts but also
fixes broken libtcod links and adds the missing contributors.
Merge pull request #51 from tomassedovic/build-script

Convert to the supported Cargo build script

This should make it more consistent to build & use the native libtcod bindings for everyone. We've moved from the old anything-goes build scripts to the new ones that only allow Rust code.

Based on the conventions in the build-script guide[1], this introduces a new crate called `tcod-sys`. That crate defines all the function signatures and type definitions in `libtcod` and so replaces what was previously in `tcod-rs/src/ffi.rs`. It also bundles a libtcod snapshot source known to work (the latest checkout of the `1.5.x` branch) plus fixes to make it compile on Mac OS X. And a build script that knows how to build it and where to put the artifacts.

This should hopefully make building tcod-rs more repeatable for everyone.

This is a breaking change.

To migrate, just make sure you have the right dependencies to build libtcod installed (see readme) and remove any `build = ...` section from your game's `Cargo.toml`. When you run `cargo build`, libtcod will be built as part that build process.

If you want to avoid building libtcod and provide your own pre-built `libtcod.{so,dll,dylib}`, you can use Cargo's build override mechanism[2]. See `tcod-rs/.cargo/config` for an example. You probably want to put the `.cargo/config` file in the root of your game, but it can be in any directory above that, too (such as your `$HOME`).

I have tested this on my 64bit Linux Mint 17 machine and a 32bit Windows 7 box with MinGW. @pmsanford tested this on OSX.

[1]: http://doc.crates.io/build-script.html
[2]: http://doc.crates.io/build-script.html#overriding-build-scripts

Closes #32.