Add handling for RejectedExecutionException

Send a TApplicationException response (and don't process the request) when the server is configured with an executor that has a limited-size queue, and a request arrives but the queue is full.
Support task timeout
Back porting Nifty jars to Java6 for Hive security (t4170257)

Summary:
This is to back port Nifty jars to Java6 as a short term solution for Hive security. Hive CLI is still compiled against Java6. It will take sometime to move to a newer JDK. Changes here include:
- Switching to JDK6 syntax
- Copying io.airlift.units.Duration to nifty-core to avoid dependency on io.airlift
- Relocate all types into com.facebook.nifty.legacy by using Maven shade plug-in

Test Plan: Unit testing plus Hive local testing

Reviewers: andrewcox

Reviewed By: andrewcox

CC: alandau, di-security@, junfang, pieter, andrewcox

Differential Revision: https://phabricator.fb.com/D1294426

Task ID: 4170257
Adding Maven proxy setting for Jenkins build