tm.type = function(name, aliases, fn, ctx) {
  if (_.isFunction(aliases)) {
    ctx = fn;
    fn = aliases;
    aliases = [];