If there are more than one cache map to be generated
for different types, a redeclaration error will occur,
to avoid this error, put common part in a single file.
Signed-off-by: Peng Gao <peng.gao.dut@gmail.com>
1. Add benchmark performance in README.md
2. Use an Attr as argument for New to initiate a cache, in this
way, more default settings can be supported.
3. Add fast way for delete method, if no onEvicted callback
function set.
4. Use bool to indicate k existence in Get method to avoid
pointer escape (which leads to memory allocation on heap),
reference link below to get detail information.
https://groups.google.com/forum/#!topic/golang-nuts/1WCWAtOsyDU
Signed-off-by: Peng Gao <peng.gao.dut@gmail.com>