serialization library based on scala reflection