A customer requires a tool to manage Cisco network hardware. The solution must use secure communication using a secure network protocol, support the use of declarative language to manage the state of resources, and periodically pull changes to the controlled nodes. Which tool meets these requirements?