Added Decodable and Encodable interfaces.