add cache select (based on ets select + match spec)
use match spec (instead of select)
fix match for distributed cache
add type to bucket
bucket type