finatra | util: Update json4s version to 4.0.3 and factor into val
finatra | util: Update json4s version to 4.0.3 and factor into val

**Problem**
The latest version of json4s is 4.0.3.

finatra depends on json4s 3.6.11.
util-jackson depends on json4s 3.6.11, and util-validator depends on json4s 3.6.7. (Seems like an accident that these are different.)

Other popular libraries, such as jwt-scala, now depend on json4s 4.0.3. This creates binary compatibility problems when Twitter Util is used in conjunction with these libraries:

```
[error] 	* org.json4s:json4s-core_2.12:4.0.3 (early-semver) is selected over {3.6.11, 3.6.11, 3.6.11, 3.6.7}
[error] 	    +- com.github.jwt-scala:jwt-json4s-common_2.12:9.0.2  (depends on 4.0.3)
[error] 	    +- com.twitter:util-validator_2.12:21.11.0            (depends on 3.6.7)
[error] 	    +- com.twitter:util-jackson_2.12:21.11.0              (depends on 3.6.11)
[error] 	    +- com.twitter:finatra-validation_2.12:21.11.0        (depends on 3.6.11)
[error] 	    +- com.twitter:finatra-jackson_2.12:21.11.0           (depends on 3.6.11)
[error]
```

**Solution**
Twitter Util should bump to json4s 4.0.3. I know that all libraries in the Twitter Stack bump these dependencies at the same time, so I have also provided a PR for Finatra. bijection is already on json4s 4.0.3. scrooge and finagle do not depends on json4s.

sbt test succeeds with json4s 4.0.3 and no other code changes.

I took the liberty of creating a val json4sVersion instead of having the version number separately in util-jackson and util-validator... this should help to keep them in sync in the future.

**Result**
Closes twitter/util#297
Closes twitter/finatra#572

Signed-off-by: Joy Bestourous <jbestourous@twitter.com>

Differential Revision: https://phabricator.twitter.biz/D803847

twitter/finatra,twitter/finatra,twitter/finatra