Force use of version branch.
diff --git a/.lbox b/.lbox
deleted file mode 100644
index eadf500..0000000
--- a/.lbox
+++ /dev/null
@@ -1 +0,0 @@
-propose -cr -for=lp:tomb
diff --git a/LICENSE b/LICENSE
deleted file mode 100644
index a4249bb..0000000
--- a/LICENSE
+++ /dev/null
@@ -1,29 +0,0 @@
-tomb - support for clean goroutine termination in Go.
-
-Copyright (c) 2010-2011 - Gustavo Niemeyer <gustavo@niemeyer.net>
-
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
-    * Redistributions of source code must retain the above copyright notice,
-      this list of conditions and the following disclaimer.
-    * Redistributions in binary form must reproduce the above copyright notice,
-      this list of conditions and the following disclaimer in the documentation
-      and/or other materials provided with the distribution.
-    * Neither the name of the copyright holder nor the names of its
-      contributors may be used to endorse or promote products derived from
-      this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
-CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/Makefile b/Makefile
deleted file mode 100644
index a18bf2e..0000000
--- a/Makefile
+++ /dev/null
@@ -1,22 +0,0 @@
-include $(GOROOT)/src/Make.inc
-
-all: package
-
-TARG=launchpad.net/tomb
-
-GOFILES=\
-	tomb.go\
-
-GOFMT=gofmt
-BADFMT:=$(shell $(GOFMT) -l $(GOFILES) $(CGOFILES) $(wildcard *_test.go) 2> /dev/null)
-
-gofmt: $(BADFMT)
-	@for F in $(BADFMT); do $(GOFMT) -w $$F && echo $$F; done
-
-ifneq ($(BADFMT),)
-ifneq ($(MAKECMDGOALS),gofmt)
-$(warning WARNING: make gofmt: $(BADFMT))
-endif
-endif
-
-include $(GOROOT)/src/Make.pkg
diff --git a/error.go b/error.go
new file mode 100644
index 0000000..0806318
--- /dev/null
+++ b/error.go
@@ -0,0 +1,5 @@
+package error
+
+func error() {
+	`ERROR: the correct import path is gopkg.in/tomb.v1 ... `
+}
diff --git a/tomb.go b/tomb.go
deleted file mode 100644
index ffe9bf7..0000000
--- a/tomb.go
+++ /dev/null
@@ -1,173 +0,0 @@
-// Copyright (c) 2011 - Gustavo Niemeyer <gustavo@niemeyer.net>
-// 
-// All rights reserved.
-// 
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are met:
-// 
-//     * Redistributions of source code must retain the above copyright notice,
-//       this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above copyright notice,
-//       this list of conditions and the following disclaimer in the documentation
-//       and/or other materials provided with the distribution.
-//     * Neither the name of the copyright holder nor the names of its
-//       contributors may be used to endorse or promote products derived from
-//       this software without specific prior written permission.
-// 
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
-// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-// LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// The tomb package helps with clean goroutine termination.
-//
-// See the Tomb type for details.
-package tomb
-
-import (
-	"errors"
-	"fmt"
-	"sync"
-)
-
-// A Tomb tracks the lifecycle of a goroutine as alive, dying or dead,
-// and the reason for its death.
-//
-// The zero value of a Tomb assumes that a goroutine is about to be
-// created or already alive. Once Kill or Killf is called with an
-// argument that informs the reason for death, the goroutine is in
-// a dying state and is expected to terminate soon. Right before the
-// goroutine function or method returns, Done must be called to inform
-// that the goroutine is indeed dead and about to stop running.
-//
-// A Tomb exposes Dying and Dead channels. These channels are closed
-// when the Tomb state changes in the respective way. They enable
-// explicit blocking until the state changes, and also to selectively
-// unblock select statements accordingly.
-//
-// When the tomb state changes to dying and there's still logic going
-// on within the goroutine, nested functions and methods may choose to
-// return ErrDying as their error value, as this error won't alter the
-// tomb state if provied to the Kill method. This is a convenient way to
-// follow standard Go practices in the context of a dying tomb.
-//
-// For background and a detailed example, see the following blog post:
-//
-//   http://blog.labix.org/2011/10/09/death-of-goroutines-under-control
-//
-// For a more complex code snippet demonstrating the use of multiple
-// goroutines with a single Tomb, see:
-//
-//   http://play.golang.org/p/Xh7qWsDPZP
-//
-type Tomb struct {
-	m      sync.Mutex
-	dying  chan struct{}
-	dead   chan struct{}
-	reason error
-}
-
-var (
-	ErrStillAlive = errors.New("tomb: still alive")
-	ErrDying = errors.New("tomb: dying")
-)
-
-func (t *Tomb) init() {
-	t.m.Lock()
-	if t.dead == nil {
-		t.dead = make(chan struct{})
-		t.dying = make(chan struct{})
-		t.reason = ErrStillAlive
-	}
-	t.m.Unlock()
-}
-
-// Dead returns the channel that can be used to wait
-// until t.Done has been called.
-func (t *Tomb) Dead() <-chan struct{} {
-	t.init()
-	return t.dead
-}
-
-// Dying returns the channel that can be used to wait
-// until t.Kill or t.Done has been called.
-func (t *Tomb) Dying() <-chan struct{} {
-	t.init()
-	return t.dying
-}
-
-// Wait blocks until the goroutine is in a dead state and returns the
-// reason for its death.
-func (t *Tomb) Wait() error {
-	t.init()
-	<-t.dead
-	t.m.Lock()
-	reason := t.reason
-	t.m.Unlock()
-	return reason
-}
-
-// Done flags the goroutine as dead, and should be called a single time
-// right before the goroutine function or method returns.
-// If the goroutine was not already in a dying state before Done is
-// called, it will be flagged as dying and dead at once with no
-// error.
-func (t *Tomb) Done() {
-	t.Kill(nil)
-	close(t.dead)
-}
-
-// Kill flags the goroutine as dying for the given reason.
-// Kill may be called multiple times, but only the first
-// non-nil error is recorded as the reason for termination.
-//
-// If reason is ErrDying, the previous reason isn't replaced
-// even if it is nil. It's a runtime error to call Kill with
-// ErrDying if t is not in a dying state.
-func (t *Tomb) Kill(reason error) {
-	t.init()
-	t.m.Lock()
-	defer t.m.Unlock()
-	if reason == ErrDying {
-		if t.reason == ErrStillAlive {
-			panic("tomb: Kill with ErrDying while still alive")
-		}
-		return
-	}
-	if t.reason == nil || t.reason == ErrStillAlive {
-		t.reason = reason
-	}
-	// If the receive on t.dying succeeds, then
-	// it can only be because we have already closed it.
-	// If it blocks, then we know that it needs to be closed.
-	select {
-	case <-t.dying:
-	default:
-		close(t.dying)
-	}
-}
-
-// Killf works like Kill, but builds the reason providing the received
-// arguments to fmt.Errorf. The generated error is also returned.
-func (t *Tomb) Killf(f string, a ...interface{}) error {
-	err := fmt.Errorf(f, a...)
-	t.Kill(err)
-	return err
-}
-
-// Err returns the reason for the goroutine death provided via Kill
-// or Killf, or ErrStillAlive when the goroutine is still alive.
-func (t *Tomb) Err() (reason error) {
-	t.init()
-	t.m.Lock()
-	reason = t.reason
-	t.m.Unlock()
-	return
-}
diff --git a/tomb_test.go b/tomb_test.go
deleted file mode 100644
index 9cddcc4..0000000
--- a/tomb_test.go
+++ /dev/null
@@ -1,114 +0,0 @@
-package tomb_test
-
-import (
-	"errors"
-	"launchpad.net/tomb"
-	"reflect"
-	"testing"
-)
-
-func TestNewTomb(t *testing.T) {
-	tb := &tomb.Tomb{}
-	testState(t, tb, false, false, tomb.ErrStillAlive)
-
-	tb.Done()
-	testState(t, tb, true, true, nil)
-}
-
-func TestKill(t *testing.T) {
-	// a nil reason flags the goroutine as dying
-	tb := &tomb.Tomb{}
-	tb.Kill(nil)
-	testState(t, tb, true, false, nil)
-
-	// a non-nil reason now will override Kill
-	err := errors.New("some error")
-	tb.Kill(err)
-	testState(t, tb, true, false, err)
-
-	// another non-nil reason won't replace the first one
-	tb.Kill(errors.New("ignore me"))
-	testState(t, tb, true, false, err)
-
-	tb.Done()
-	testState(t, tb, true, true, err)
-}
-
-func TestKillf(t *testing.T) {
-	tb := &tomb.Tomb{}
-
-	err := tb.Killf("BO%s", "OM")
-	if s := err.Error(); s != "BOOM" {
-		t.Fatalf(`Killf("BO%s", "OM"): want "BOOM", got %q`, s)
-	}
-	testState(t, tb, true, false, err)
-
-	// another non-nil reason won't replace the first one
-	tb.Killf("ignore me")
-	testState(t, tb, true, false, err)
-
-	tb.Done()
-	testState(t, tb, true, true, err)
-}
-
-func TestErrDying(t *testing.T) {
-	// ErrDying being used properly, after a clean death.
-	tb := &tomb.Tomb{}
-	tb.Kill(nil)
-	tb.Kill(tomb.ErrDying)
-	testState(t, tb, true, false, nil)
-
-	// ErrDying being used properly, after an errorful death.
-	err := errors.New("some error")
-	tb.Kill(err)
-	tb.Kill(tomb.ErrDying)
-	testState(t, tb, true, false, err)
-
-	// ErrDying being used badly, with an alive tomb.
-	tb = &tomb.Tomb{}
-	defer func() {
-		err := recover()
-		if err != "tomb: Kill with ErrDying while still alive" {
-			t.Fatalf("Wrong panic on Kill(ErrDying): %v", err)
-		}
-		testState(t, tb, false, false, tomb.ErrStillAlive)
-	}()
-	tb.Kill(tomb.ErrDying)
-}
-
-func testState(t *testing.T, tb *tomb.Tomb, wantDying, wantDead bool, wantErr error) {
-	select {
-	case <-tb.Dying():
-		if !wantDying {
-			t.Error("<-Dying: should block")
-		}
-	default:
-		if wantDying {
-			t.Error("<-Dying: should not block")
-		}
-	}
-	seemsDead := false
-	select {
-	case <-tb.Dead():
-		if !wantDead {
-			t.Error("<-Dead: should block")
-		}
-		seemsDead = true
-	default:
-		if wantDead {
-			t.Error("<-Dead: should not block")
-		}
-	}
-	if err := tb.Err(); err != wantErr {
-		t.Errorf("Err: want %#v, got %#v", wantErr, err)
-	}
-	if wantDead && seemsDead {
-		waitErr := tb.Wait()
-		switch {
-		case waitErr == tomb.ErrStillAlive:
-			t.Errorf("Wait should not return ErrStillAlive")
-		case !reflect.DeepEqual(waitErr, wantErr):
-			t.Errorf("Wait: want %#v, got %#v", wantErr, waitErr)
-		}
-	}
-}