Allows OOP concepts in javascript including classes, inheritance, multi-inheritance, polymophism, interfaces (code contracts), and enumerators. Several ready to use collections implemented including List, Queue, Stack, Dictionary, and Tree.