Made universal. Expanded documentation.