addMonths = function (date, n) {
            var _d = date.getDate();
            date.setDate(1);
            date.setMonth(date.getMonth() + n);
            date.setDate(Math.min(_d, _.days(date)));
            return date;
        }
[add description]
@param {[type]} date   [description]
@param {Number | Object} offset [description]
new Date().add(2)
new Date().add({
    y: 3
    , w: 1
    , M: 1
    , d: 1
    , h: 1
    , m: 1
    , s: 1
    , ms: 1
})