Moved KeyValue into .extensions, made vals final