CARP could be a base for this, but I think they should forget any idea of inter-vendor compatibility and extend CARP to allow for full replication of all settings and states, and allow single point firmware upgrade for a cluster.
CARP is really just for IP failover / redundancy. OpenBSD's PF uses
pfsync to synchronize firewall states, and
sasyncd to synchronize IPSec connections.
Being that MikroTik utilizes Linux netfilter, the closest thing for state failover would be
conntrackd from
conntrack-tools. I've never utilized this and don't know how it compares to pfsync.
State synchronization would be a nice start, then they could build on that to add the other requested HA features.