Bug 1331213: Implement the bulk of media query evaluation. r=heycam
Bug 1331213: Implement the bulk of media query evaluation. r=heycam

Two main notes:

 * The nsStringBuffer bit goes untested, since it's only used on windows and
   there's no way I can test it, please review with care.

 * I haven't implemented yet the "enumerated" media queries. I'd want to do it
   as a follow-up, because I'm running out of time, and it requires some
   investigation.

MozReview-Commit-ID: 1pBbzyIViPk
Signed-off-by: Emilio Cobos Álvarez <86fa523305b8ad6a8a853c04cfef24a0445908d3@crisal.io>

upsuper/servo,KiChjang/servo,emilio/servo,paulrouget/servo,pyfisch/servo,nnethercote/servo,jimberlage/servo,cbrewster/servo,larsbergstrom/servo,rnestler/servo,cbrewster/servo,jimberlage/servo,larsbergstrom/servo,dati91/servo,fiji-flo/servo,jimberlage/servo,mbrubeck/servo,emilio/servo,upsuper/servo,mbrubeck/servo,KiChjang/servo,nnethercote/servo,mattnenterprise/servo,mbrubeck/servo,sadmansk/servo,upsuper/servo,emilio/servo,eddyb/servo,jimberlage/servo,dsandeephegde/servo,ConnorGBrewster/servo,SimonSapin/servo,szeged/servo,eddyb/servo,szeged/servo,jimberlage/servo,rnestler/servo,pyfisch/servo,CJ8664/servo,mattnenterprise/servo,pyfisch/servo,fiji-flo/servo,SimonSapin/servo,sadmansk/servo,emilio/servo,saneyuki/servo,mattnenterprise/servo,SimonSapin/servo,splav/servo,larsbergstrom/servo,ConnorGBrewster/servo,SimonSapin/servo,DominoTree/servo,anthgur/servo,rnestler/servo,emilio/servo,pyfisch/servo,pyfisch/servo,rnestler/servo,peterjoel/servo,upsuper/servo,szeged/servo,peterjoel/servo,szeged/servo,DominoTree/servo,paulrouget/servo,pyfisch/servo,saneyuki/servo,thiagopnts/servo,peterjoel/servo,avadacatavra/servo,avadacatavra/servo,DominoTree/servo,ConnorGBrewster/servo,peterjoel/servo,pyfisch/servo,mattnenterprise/servo,cbrewster/servo,pyfisch/servo,pyfisch/servo,splav/servo,szeged/servo,fiji-flo/servo,canaltinova/servo,notriddle/servo,larsbergstrom/servo,KiChjang/servo,avadacatavra/servo,mattnenterprise/servo,eddyb/servo,thiagopnts/servo,cbrewster/servo,ConnorGBrewster/servo,CJ8664/servo,thiagopnts/servo,saneyuki/servo,ConnorGBrewster/servo,anthgur/servo,sadmansk/servo,canaltinova/servo,avadacatavra/servo,nnethercote/servo,KiChjang/servo,sadmansk/servo,avadacatavra/servo,peterjoel/servo,szeged/servo,peterjoel/servo,ConnorGBrewster/servo,cbrewster/servo,upsuper/servo,dati91/servo,larsbergstrom/servo,anthgur/servo,dsandeephegde/servo,eddyb/servo,mbrubeck/servo,KiChjang/servo,peterjoel/servo,cbrewster/servo,mattnenterprise/servo,fiji-flo/servo,mbrubeck/servo,paulrouget/servo,larsbergstrom/servo,DominoTree/servo,mbrubeck/servo,DominoTree/servo,notriddle/servo,cbrewster/servo,splav/servo,paulrouget/servo,ConnorGBrewster/servo,DominoTree/servo,notriddle/servo,emilio/servo,avadacatavra/servo,sadmansk/servo,paulrouget/servo,jimberlage/servo,CJ8664/servo,KiChjang/servo,dsandeephegde/servo,paulrouget/servo,szeged/servo,canaltinova/servo,mattnenterprise/servo,dsandeephegde/servo,peterjoel/servo,CJ8664/servo,dsandeephegde/servo,fiji-flo/servo,rnestler/servo,saneyuki/servo,thiagopnts/servo,mbrubeck/servo,CJ8664/servo,saneyuki/servo,anthgur/servo,notriddle/servo,CJ8664/servo,emilio/servo,larsbergstrom/servo,dsandeephegde/servo,dati91/servo,jimberlage/servo,nnethercote/servo,upsuper/servo,thiagopnts/servo,szeged/servo,avadacatavra/servo,splav/servo,eddyb/servo,notriddle/servo,rnestler/servo,nnethercote/servo,nnethercote/servo,KiChjang/servo,dati91/servo,fiji-flo/servo,peterjoel/servo,dati91/servo,DominoTree/servo,mbrubeck/servo,rnestler/servo,anthgur/servo,fiji-flo/servo,thiagopnts/servo,mattnenterprise/servo,upsuper/servo,sadmansk/servo,emilio/servo,SimonSapin/servo,SimonSapin/servo,nnethercote/servo,jimberlage/servo,saneyuki/servo,notriddle/servo,rnestler/servo,splav/servo,canaltinova/servo,canaltinova/servo,paulrouget/servo,KiChjang/servo,eddyb/servo,sadmansk/servo,KiChjang/servo,saneyuki/servo,pyfisch/servo,splav/servo,anthgur/servo,splav/servo,splav/servo,splav/servo,paulrouget/servo,nnethercote/servo,notriddle/servo,saneyuki/servo,eddyb/servo,notriddle/servo,saneyuki/servo,szeged/servo,emilio/servo,dsandeephegde/servo,peterjoel/servo,paulrouget/servo,fiji-flo/servo,dati91/servo,canaltinova/servo,canaltinova/servo,splav/servo,canaltinova/servo,DominoTree/servo,cbrewster/servo,szeged/servo,dsandeephegde/servo,ConnorGBrewster/servo,avadacatavra/servo,anthgur/servo,paulrouget/servo,notriddle/servo,SimonSapin/servo,CJ8664/servo,KiChjang/servo,larsbergstrom/servo,notriddle/servo,dati91/servo,sadmansk/servo,larsbergstrom/servo,saneyuki/servo,DominoTree/servo,nnethercote/servo,thiagopnts/servo,DominoTree/servo,dati91/servo,SimonSapin/servo,thiagopnts/servo,upsuper/servo,anthgur/servo,eddyb/servo,larsbergstrom/servo,emilio/servo,CJ8664/servo,nnethercote/servo,jimberlage/servo