AuthSource message passing + builder class.

Support message passing rules for auth source module in wiegand
module.
Not supported in auth module yet. Start adding a builder class
to build IAuthenticationSource object from zmqpp::message.
improvement of authsource builder class
Add static typing (enum class) to source data type.

We used string previously, now use enum class for type safety.