added composer support and refactored some exentable usages