Standalone STI

Move STI to standalone repository
- Add ncdc's work to stream tars
- Refactor code and add unit tests
- Switch to using Godeps
Mercurial is required if you need to pull a go get package that depends on mercurial.

----- Original Message -----
> > +1. `sti` builds the new output image using the selected build methodology:
> > +    1. The artifacts from the previous build will be in the `artifacts`
> > directory of the tar
> > +       passed to the build
> > +    1. The build image's `assemble` script is responsible for detecting
> > and using the build
> > +       artifacts
> > +
> > +Note the invocation of the `save-artifacts` script; this script is
> > responsible for streaming out
> > +dependencies in a tar file
> > +
> > +Dependencies
> > +------------
> > +
> > +1. [Docker](http://www.docker.io)
> > +1. [Go](http://golang.org/)
> > +1. [Mercurial](http://mercurial.selenic.com/)
> > +1. Rpms: `libselinux libselinux-devel libselinux-utils`
> 
> Not sure these requirements are correct anymore. I don't think we require
> Mercurial... and I guess we don't explicitly need the SELinux RPMs. Right?
> 
> ---
> Reply to this email directly or view it on GitHub:
> https://github.com/openshift/source-to-image/pull/65/files#r19160312