Verify that reftest passes valid servo args

Fixes #4101
Fixed test filter
remove bindings codegen h/cpp files from .gitignore

These files don't exist in the tree, and the codegen doesn't create
them, so we shouldn't have them sitting around in .gitignore.
Fix error in layout trace viewer
Fixed #4127: Added a fast path to border-radius.

This will avoid drawing Arcs if there's no border-radius property set.
auto merge of #4155 : mttr/servo/reftest_unknown_servo_args, r=jdm

Fixes #4101
auto merge of #4169 : IdeaHat/servo/fix-mach-unit-test-filter, r=jdm

Minor change, added unit test filter to components so that ./mach test-unit [test-filter] works in line with documentation.

I'd personally like to also make filters on the components as well as the tests. This would change the interface (probably to ./mach test-unit [component-filter] [test-filter]), but change is NOT in this pull request.
code review
auto merge of #4186 : mbrubeck/servo/layout-viewer, r=glennw

d1b433a3b3bab353f320b2f39fa953ce326d2d55 changed the encoding format for Flows.  The root is no longer wrapped inside a `data` field, but instead includes BaseFlow fields directly.  This broke the layout trace viewer, which threw an uncaught exception when the `data` property was missing.  This fixes the exception, though some functionality may still be partly broken.
Move the servo crate from root to components/servo
Warn when Cargo is run directly. Fix #3957.
Make build system more independent of current directory.
Have `./mach cargo` not change to `components/servo`.

`ports/android/glut` relies on it executing on the current directory.
Fix up android/glut port to find its servo dependency.
Don’t try to run unit tests for the servo crate.

There are none, but the contenttest program fails with:

```
task '<main>' panicked at 'Required option 'source-dir' missing.', ../../tests/contenttest.rs:48
```
More target path fixup.
auto merge of #4140 : SimonSapin/servo/no-root-cargo-toml, r=SimonSapin

This fixes #3957, and allow #4115 not to regress #4099.
Have 'mach doc' copy Rust documentation.
Replace `mach serve-docs` by `mach browse-doc`, fix #3913
layout: Implement `opacity` per CSS-COLOR § 3.2.

This adds the infrastructure necessary to support stacking contexts that
are not containing blocks for absolutely-positioned elements. Our
infrastructure did not support that before. This minor revamp actually
ended up simplifying the logic around display list building and
stacking-relative position computation for absolutely-positioned flows,
which was nice.