Bug 1110534: Simplify MP4 extradata handling. r=kentuckyfriedtakahe
Bug 1110534: Retrieve SPS and PPS from AVCC stream when necessary. r=kentuckyfriedtakahe

In avc3 or annex B stream, the AVCC extradata doesn't always contain the SPS and PPS required to
decode the first frame. Add method to extract SPS and PPS and construct an AVCC extradata.
Bug 1110534: Use more accurate names in MP4Sample and Annex B utility functions. r=kentuckyfriedtakahe
Bug 1110534: Add AnnexB support to FFmpeg h264 decoder. r=kentuckyfriedtakahe
Bug 1110534: Add AVC Annex B to AVCC format conversion utility. r=kentuckyfriedtakahe

Based on original code by Baptiste Coudurier extracted from FFmpeg's libavformat
Bug 1110534: Make PlatformDecoderModule ref counted. r=edwin
Bug 1110534: Create AVCC converter wrapper class. r=cpearce

This class easily allows an AVCC-only decoder (H264EME and Apple VDA/VideoToolbox) to support
AnnexB and AVC3 content.
This is done by lazily creating the decoder only once we have detected SPS/PPS in the data
stream, and converting all input to AVCC format.
Bug 1110534: Use AVCC wrapper for mac decoder. Adds AnnexB and AVC3 support. r=cpearce
Bug 1110534: Use AVCC wrapper for EME. Adds AnnexB and AVC3 support. r=cpearce
Bug 1110534: Use ref counted pointers to hold references in mac decoder. r=rillian