Entity-components system for Javascript