Make BgpProtoPrefix parsing more robust

Add static method FromProtoPrefix for all supported prefix types.
Perform sanity checks on BgpProtoPrefix before filling in prefix.
Use BgpProtoPrefix::[Read|Write]Label methods where applicable.

Change-Id: I0f2b8f39ff6ccfc1ad0c42438e472fca552cf229