If Signal were federated, there would be no single entity to shut down. Alas...
Given the amount of open source code already, it should be possible to clone.
Edit: see below, server code is open. Keeping original text below:
IIRC the server code is proprietary, but the clients are open. That's a decent starting point.