Making changes to implementation + adding docs.