Call NativeSurface::upload through a mut reference.

Required for servo/rust-layers#95.
Throw a TypeError when a non-object is passed where one is expected.
Update to latest rust-layers
Change layout to handle whitespace between inline elements in HTML file.

This matches the behaviour of other browsers.
Bump submodule ptr to allow ndk-gdb debugging.
Move RenderState manipulation out of a loop so that we thrash it less

It doesn't really make sense to say that we're idle when we're
potentially still rendering.
Merge pull request #2963 from mbrubeck/surface-upload-mut

Call NativeSurface::upload through a mut reference.
Merge pull request #2965 from zwarich/render-state-less

Move RenderState manipulation out of a loop so that we thrash it less
Make perf_rainbow.html load ~20x faster by making the file loader read in 8 kB blocks.

This also makes the tests run significantly quicker.
Merge pull request #2966 from glennw/perf-rainbow

Make perf_rainbow.html load ~20x faster by making the file loader read i...
Merge pull request #2953 from glennw/inline-whitespace

Change layout to handle whitespace between inline elements in HTML file.
Merge pull request #2964 from glennw/servo-glue

Bump submodule ptr to allow ndk-gdb debugging on android.
Merge pull request #2961 from Ms2ger/non-object-throw

Throw a TypeError when a non-object is passed where one is expected; r=jdm