contract Migratable is Owned {
    address public sucessor; //By default, sucessor will be address 0, meaning the current contract is still active and has no sucessor yet!
    function setSucessor(address _sucessor) onlyOwner public {
      sucessor=_sucessor;
    }
}
/**
 * @title Migratable
 * @dev Base contract which allows children to be migratable, that is it allows contracts to migrate to another contract (sucessor) that 
 * is a more advanced version of the previous contract (more functionality, improved security, etc.).
 */
function setSucessor(address _sucessor) onlyOwner public {
  sucessor=_sucessor;
}

//By default, sucessor will be address 0, meaning the current contract is still active and has no sucessor yet!