Removed unnecessary check in Box2DBody::at_fixture

We should assume this function will not be called with index out of
bounds.
Box2DBody fixes and optimizations

* Inlined all getters for properties that are never changed dynamically
  by Box2D to return the value from the b2BodyDef.

* Fixed the value of the 'awake' property, which was always returning
  the value in the b2BodyDef because of a missing 'return' keyword
  for the case where the body was created.

* Changed type of linearDamping, angularDamping and angularVelocity to
  'float' to match the Box2D variable they are stored in.

* Fixed Box2DBody::angularVelocity to return the dynamic value when
  appropriate, which might have changed from the b2BodyDef value.

* Fixed Box2DBody::setAngularVelocity to not compare the degree variable
  with the radian variable.

* Don't do a qFuzzyCompare in Box2DBody::setGravityScale. There is no
  reason why the gravity scale shouldn't match exactly.
Fixed conversion of mass

Mass is per square meter so the scale ratio should be squared as well.
Simplified initial registration of bodies

No need to put them in a list first.

I do find the support for bodies that are not direct children of the
world a little problematic. Apart from coordinate system issues,
currently also the world only notices the addition and removal of bodies
that are its own children. When a body is deeper down in the hierarchy,
it is registered on initialization but it will fail to do so when added
dynamically.
Removed unnecessary emit functions

Since Qt 5, signals are public and can be emitted from the outside
without issues.
Whitespace tweaks and changed position of signal declarations

The signal declarations were positioned after the private variables in
Box2DFixture and Box2DChain, which is uncommon.
Don't have DebugDraw darken the view automatically

Drawing this large transparent rectangle is a major performance issue
for the QQuickPaintedItem on large screens. When it is desired, it's
easy and much faster to do it with a transparent rectangle in QML.
Removed the need to keep a list of bodies in Box2DWorld

Box2D itself already has the list of bodies so there is no need for
another list. When the world is deleted, it is enough to make sure the
Box2DBody instances no longer reference the deleted b2Body instances.
Merge pull request #33 from bjorn/master

Fixes and optimizations