added keys documentation

updated core, events docs
changed design
chaining for keys functions