1. A computer-implemented method for acquiring and storing knowledge about entities, the method comprising: storing metadata about entities in a metadata database, the metadata database comprising lists of entities and tables mapping relationships between the entities; storing knowledge about the entities and relationships between the entities in a knowledge graph database, wherein the knowledge graph database comprises factual knowledge data about entities, relationship knowledge data between entities, and behavioral knowledge data between entities; storing smart content records about each of the entities in a smart content database, each of the smart content records having a component comprising the source of the content and a component comprising knowledge about the content in the smart content record; and providing knowledge to a user useful for interacting with entities.