refactored gel to be npm moduleable
merged