naively implementing system.js until a cleaner solution comes along.