Renamed some APIs and reworked Decoder factory methods
Use non-deprecated superclass name
Use non-deprecated API
Added factory methods