common: Implement std::set and std::map serialization

Change-Id: I0961688954a30d0147a02992a6e640edb4455414
common: Change GoalMap serialization

Make GoalMap use std::map instead of fixed size array when serializing.
This change will make it possible to pass GoalMaps through the network
between two modules in two diffrent version, being aware of diffrent
number of possible goals.

Change-Id: I7a23e809f7fdfc60cd6b390cfe2311470abc3e4f
common: Make vector serialization support custom allocators

Change-Id: I1ce44095fbee1cfbf6e5a3a89e8053dcdd79493f