Automatic checkpointing for Auroracoin

Automatic checkpointing broadcasts checkpoints rather than having to add them to the source code and then redistribute the clients. It protects the blockchain from having blocks orphaned by attackers and transactions being rolled back.