layout: Run entity are parsed as strings
It looks like the entity `run` is being extracted as a string, not an integer. The zero padding is correctly dealt with, but it is stored as a string.

I could have sworn we deal with this before so that it would read run in as a integer, but it looks like even in the tests, it expects strings. 
diff --git a/bids/layout/config/bids.json b/bids/layout/config/bids.json
index d2fdef91..9020f25d 100644
--- a/bids/layout/config/bids.json
+++ b/bids/layout/config/bids.json
@@ -39,7 +39,8 @@
         },
         {
             "name": "run",
-            "pattern": "[_/\\\\]run-0*(\\d+)"
+            "pattern": "[_/\\\\]run-0*(\\d+)",
+            "dtype": "int"
         },
         {
             "name": "proc",
diff --git a/bids/layout/tests/test_layout.py b/bids/layout/tests/test_layout.py
index 95f0a631..69b90085 100644
--- a/bids/layout/tests/test_layout.py
+++ b/bids/layout/tests/test_layout.py
@@ -125,7 +125,7 @@ def test_get_fieldmap2(testlayout1):
 
 
 def test_bids_json(testlayout1):
-    assert testlayout1.get(return_type='id', target='run') == ['1', '2']
+    assert testlayout1.get(return_type='id', target='run') == [1, 2]
     assert testlayout1.get(return_type='id', target='session') == ['1', '2']
 
 
diff --git a/bids/version.py b/bids/version.py
index 31530200..89a9bbc6 100644
--- a/bids/version.py
+++ b/bids/version.py
@@ -45,7 +45,7 @@ AUTHOR = "PyBIDS developers"
 AUTHOR_EMAIL = "bids-discussion@googlegroups.com"
 PLATFORMS = "OS Independent"
 # No data for now
-REQUIRES = ["grabbit>=0.2.2", "six", "num2words", "numpy", "scipy", "pandas",
+REQUIRES = ["grabbit>=0.2.3", "six", "num2words", "numpy", "scipy", "pandas",
             "nibabel", "patsy"]
 EXTRAS_REQUIRE = {
    # Just to not break compatibility with externals requiring
['bids/layout/tests/test_layout.py', 'bids/layout/config/bids.json', 'bids/version.py']