Rival Libyan governments sign peace agreement