#149. Change Configuration and Factory to be Serializable to support distributed implementation.