     return lineage
 }
 
-Node.constructor()
+Node.constructor(null, null)

module.exports = Node = {
  label: "Node"

  constructor: ->
    @_master = null
    @_variants = []

    @_parent = null
    @_children = []

    @_head = null

    @_isHatched = false


  _createVariantWithHead: (head=null, spec) ->
    variant = Object.create(this)
    _.extend(variant, spec) if spec?

    head ?= variant
    variant.constructor(this, head)

    @_variants.push(variant)

    return variant
