Fixed test broken by local_constant_names 

depreciation removed
keep a cache of the reader methods so we can reuse them
move the reader method cache in to the read module
keep a cache of writer methods
Merge pull request #11276 from arunagw/build-fix

Fixed test broken by local_constant_names
refactor the method cache objects to have a superclass