Add flake8 hook.  Tests are broken though.
diff --git a/hooks.yaml b/hooks.yaml
index 486c955..cb7ce0b 100644
--- a/hooks.yaml
+++ b/hooks.yaml
@@ -13,14 +13,19 @@
     description: Ensures that a file is either empty, or ends with one newline.
     entry: end-of-file-fixer
     language: python
+-   id: flake8
+    name: Flake8
+    description: This hook runs flake8.
+    entry: flake8
+    language: python
 -   id: name-tests-test
     name: Tests should end in _test.py
     description: This verifies that test files are named correctly
     entry: name-tests-test
     language: python
 -   id: pyflakes
-    name: Pyflakes
-    description: This validator runs pyflakes.
+    name: Pyflakes (DEPRECATED, use flake8)
+    description: This hook runs pyflakes. (This is deprecated, use flake8).
     entry: pyflakes
     language: python
 -   id: trailing-whitespace
diff --git a/requirements.txt b/requirements.txt
index 1753516..b63c160 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -2,9 +2,7 @@
 
 # Testing requirements
 coverage
-# Fuck you ipython
-ipython<2.0.0
-ipdb
+flake8
 mock
 git+git://github.com/pre-commit/pre-commit#egg=pre-commit
 pytest
diff --git a/setup.py b/setup.py
index 4234288..094a989 100644
--- a/setup.py
+++ b/setup.py
@@ -7,6 +7,7 @@
     packages=find_packages('.', exclude=('tests*', 'testing*')),
     install_requires=[
         'argparse',
+        'flake8',
         'plumbum',
         'pyflakes',
         'pyyaml',