change decode_type to be an enum, and add rcmm & samsung decodes from another copy of the lib