Remove pretty_format_json simplejson dependency

 * The simplejson module is only needed for <=py25 so replace with builtin json.
 * Replace six dependecy for simple Py2 check for convertion to unicode.
 * Cleanup quotes.
diff --git a/pre_commit_hooks/pretty_format_json.py b/pre_commit_hooks/pretty_format_json.py
index bb7a3d0..9115077 100644
--- a/pre_commit_hooks/pretty_format_json.py
+++ b/pre_commit_hooks/pretty_format_json.py
@@ -2,11 +2,11 @@
 
 import argparse
 import io
+import json
 import sys
 from collections import OrderedDict
 
-import simplejson
-import six
+from six import text_type
 
 
 def _get_pretty_format(contents, indent, ensure_ascii=True, sort_keys=True, top_keys=[]):
@@ -17,18 +17,18 @@
         if sort_keys:
             after = sorted(after, key=lambda x: x[0])
         return OrderedDict(before + after)
-    return six.text_type(simplejson.dumps(
-        simplejson.loads(
-            contents,
-            object_pairs_hook=pairs_first,
-        ),
+    json_pretty = json.dumps(
+        json.loads(contents, object_pairs_hook=pairs_first),
         indent=indent,
         ensure_ascii=ensure_ascii,
-    )) + "\n"  # dumps does not end with a newline
+        separators=(',', ': '),  # Workaround for https://bugs.python.org/issue16333
+    )
+    # Ensure unicode (Py2) and add the newline that dumps does not end with.
+    return text_type(json_pretty) + '\n'
 
 
 def _autofix(filename, new_contents):
-    print("Fixing file {}".format(filename))
+    print('Fixing file {}'.format(filename))
     with io.open(filename, 'w', encoding='UTF-8') as f:
         f.write(new_contents)
 
@@ -110,16 +110,15 @@
             )
 
             if contents != pretty_contents:
-                print("File {} is not pretty-formatted".format(json_file))
+                print('File {} is not pretty-formatted'.format(json_file))
 
                 if args.autofix:
                     _autofix(json_file, pretty_contents)
 
                 status = 1
-
-        except simplejson.JSONDecodeError:
+        except ValueError:
             print(
-                "Input File {} is not a valid JSON, consider using check-json"
+                'Input File {} is not a valid JSON, consider using check-json'
                 .format(json_file),
             )
             return 1
diff --git a/setup.py b/setup.py
index ce8de14..ad14930 100644
--- a/setup.py
+++ b/setup.py
@@ -28,8 +28,6 @@
         'flake8!=2.5.3',
         'autopep8>=1.3',
         'pyyaml',
-        'simplejson',
-        'six',
     ],
     entry_points={
         'console_scripts': [
diff --git a/tests/pretty_format_json_test.py b/tests/pretty_format_json_test.py
index eeef65b..4054b4c 100644
--- a/tests/pretty_format_json_test.py
+++ b/tests/pretty_format_json_test.py
@@ -1,6 +1,7 @@
 import shutil
 
 import pytest
+from six import PY2
 
 from pre_commit_hooks.pretty_format_json import parse_indent
 from pre_commit_hooks.pretty_format_json import pretty_format_json
@@ -17,6 +18,7 @@
         parse_indent('-2')
 
 
+
 @pytest.mark.parametrize(
     ('filename', 'expected_retval'), (
         ('not_pretty_formatted_json.json', 1),
@@ -43,6 +45,7 @@
     assert ret == expected_retval
 
 
+@pytest.mark.skipif(PY2, reason="Requires Python3")
 @pytest.mark.parametrize(
     ('filename', 'expected_retval'), (
         ('not_pretty_formatted_json.json', 1),
@@ -52,7 +55,7 @@
         ('tab_pretty_formatted_json.json', 0),
     ),
 )
-def test_tab_pretty_format_json(filename, expected_retval):
+def test_tab_pretty_format_json(filename, expected_retval):  # pragma: no cover
     ret = pretty_format_json(['--indent', '\t', get_resource_path(filename)])
     assert ret == expected_retval