First pass at extracting interfaces in the entity component. Once this is finished in the entity component, I'll move the interfaces, factories, util classes, etc to /framework/api.