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.

https://github.com/signalapp/Signal-Android