[feature] Add entity, initial interfaces, json reader/writer