Strategist nonce is not checked
Strategist nonce is not checked while checking commitment. This makes impossible for strategist to cancel signed commitment.\\n`VaultImplementation.commitToLien` is created to give the ability to borrow from the vault. The conditions of loan are discussed off chain and owner or delegate of the vault then creates and signes deal details. Later borrower can provide it as `IAstariaRouter.Commitment calldata params` param to `VaultImplementation.commitToLien`.\\nAfter the checking of signer of commitment `VaultImplementation._validateCommitment` function calls `AstariaRouter.validateCommitment`.\\n```\\n  function validateCommitment(IAstariaRouter.Commitment calldata commitment)\\n    public\\n    returns (bool valid, IAstariaRouter.LienDetails memory ld)\\n  {\\n    require(\\n      commitment.lienRequest.strategy.deadline >= block.timestamp,\\n      "deadline passed"\\n    );\\n\\n\\n    require(\\n      strategyValidators[commitment.lienRequest.nlrType] != address(0),\\n      "invalid strategy type"\\n    );\\n\\n\\n    bytes32 leaf;\\n    (leaf, ld) = IStrategyValidator(\\n      strategyValidators[commitment.lienRequest.nlrType]\\n    ).validateAndParse(\\n        commitment.lienRequest,\\n        COLLATERAL_TOKEN.ownerOf(\\n          commitment.tokenContract.computeId(commitment.tokenId)\\n        ),\\n        commitment.tokenContract,\\n        commitment.tokenId\\n      );\\n\\n\\n    return (\\n      MerkleProof.verifyCalldata(\\n        commitment.lienRequest.merkle.proof,\\n        commitment.lienRequest.merkle.root,\\n        leaf\\n      ),\\n      ld\\n    );\\n  }\\n```\\n\\nThis function check additional params, one of which is `commitment.lienRequest.strategy.deadline`. But it doesn't check for the nonce of strategist here. But this nonce is used while signing.\\nAlso `AstariaRouter` gives ability to increment nonce for strategist, but it is never called. That means that currently strategist use always same nonce and can't cancel his commitment.
Give ability to strategist to call `increaseNonce` function.
Strategist can't cancel his commitment. User can use this commitment to borrow up to 5 times.
```\\n  function validateCommitment(IAstariaRouter.Commitment calldata commitment)\\n    public\\n    returns (bool valid, IAstariaRouter.LienDetails memory ld)\\n  {\\n    require(\\n      commitment.lienRequest.strategy.deadline >= block.timestamp,\\n      "deadline passed"\\n    );\\n\\n\\n    require(\\n      strategyValidators[commitment.lienRequest.nlrType] != address(0),\\n      "invalid strategy type"\\n    );\\n\\n\\n    bytes32 leaf;\\n    (leaf, ld) = IStrategyValidator(\\n      strategyValidators[commitment.lienRequest.nlrType]\\n    ).validateAndParse(\\n        commitment.lienRequest,\\n        COLLATERAL_TOKEN.ownerOf(\\n          commitment.tokenContract.computeId(commitment.tokenId)\\n        ),\\n        commitment.tokenContract,\\n        commitment.tokenId\\n      );\\n\\n\\n    return (\\n      MerkleProof.verifyCalldata(\\n        commitment.lienRequest.merkle.proof,\\n        commitment.lienRequest.merkle.root,\\n        leaf\\n      ),\\n      ld\\n    );\\n  }\\n```\\n