code: function(first, second) {
        if (second != null) {
          this.x += first;
          this.y += second;
        } else {
          this.x += first.x;
          this.y += first.y;
        }
        return this;
      }
docs: Adds a point to this one, returning a modified point. You may
  also use a two argument call like <code>point.add(x, y)</code>
  to add x and y values without a second point object.
  
  point = Point(2, 3)
  
  point.x
  # => 2
  
  point.y
  # => 3
  
  point.add$(Point(3, 4))
  
  point.x
  # => 5
  
  point.y
  # => 7
  
  anotherPoint = Point(2, 3)
  anotherPoint.add$(3, 4)
  
  anotherPoint.x
  # => 5
  
  anotherPoint.y
  # => 7
  
  @name add$
  @methodOf Point#
  @param {Point} other The point to add this point to.
  @returns {Point} The sum of both points.