Add ray cast functionality

That works over World::RayCast(callback,point1,point2) as @bjorn adviced in #17

```javascript
World {
        id: world
		
        onStepped: {
            world.rayCast(point1,point2,"some_id");
        }

        onRayCasted: {
			var fixture = rayCast.fixture;
			...
			rayCast.setResult(RayCast.Continue);
		}
```
As stated in Box2D documentation `callback` returns some value to proceed the ray cast. Actually I don't really understand what this value does. Anyway I implemented some functionality to return this value. As resust of that RayCast object inherits from QObject and may be too "heavy" to be created each time step.

Or may be just do the signal in this way -
```
emit rayCasted(fixture,point,normal,fraction);
```
and return 1 permanently.