dashboard: Update to React v0.12.2

Signed-off-by: Jesse Stuart <jesse@jessestuart.ca>
dashboard: Use production version of React unless ENVIRONMENT=development

Signed-off-by: Jesse Stuart <jesse@jessestuart.ca>
Merge pull request #671 from flynn/dashboard-update-react

dashboard: Update React to v0.12.2
website: twif 12-29-14

Signed-off-by: Dominic Serio <dominic@flynn.io>
Merge pull request #672 from flynn/twif

website: twif 12-29-14
Fix typo in installation docs

Changed flag `--discovery-init` to `--init-discovery`
Merge pull request #674 from siminm/patch-1

Fix typo in installation docs
dashboard: Add buildpack detection in deploy UI

Signed-off-by: Jesse Stuart <jesse@jessestuart.ca>
Merge pull request #673 from flynn/dashboard-buildpacks

dashboard: Add buildpack detection in deploy UI
flannel: Add build scripts

Signed-off-by: Jonathan Rudenberg <jonathan@titanous.com>
discoverd/client: Use EXTERNAL_IP when address is not fully specified

Signed-off-by: Jonathan Rudenberg <jonathan@titanous.com>
host: Use VXLAN overlay networking

This patch adds an overlay network using VXLAN so that every
container has a cluster-routable IP address without relying on any
specific networking technology being available.

A modified version of the flannel daemon from CoreOS is used, which
allocates subnets and communicates with other members of the cluster
using etcd.

- Remove iptables port forwarding, iptables is now only used for
  NAT'ing outbound external traffic. If jobs want to receive inbound
  traffic from services that are not routable via VXLAN, they must
  use the host network namespace.
- Add flannel to the layer 0 bootstrap manifest.
- Add a networking setup stage to backend implementations, currently
  this is hard-coded to be run after the flannel job is started in
  the manifest runner. In the future it will be more abstract.
- Add a networking setup implementation to the libvirt-lxc backend
  that knows what flannel is and configures everything properly.
  This stage replaces the networking setup in the backend
  initialization:
  - Wait for the flannel job to come up.
  - Wait for the configuration from flannel to become available.
  - Parse the configuration from flannel, this config has the subnet
    and bridge MTU.
  - Configure the libvirt network/bridge with the appropriate
    settings.
  - Enable outbound NAT via iptables.

Signed-off-by: Jonathan Rudenberg <jonathan@titanous.com>