overhaul to support hashie 3.2 and lot of other latest and greatest