Changes in gdx.math

Hello. Here I commited some changes in math package. 
Circle, Rectangle, Ellipse, Polygon are extends Shape now.
Ellipse and Rectangle are also extends RectangleBased.
For now you can do something like that:
``` boolean isPointInShape(Shape shape, Vector2 point) { return shape.contains(point); } ```
or 
``` void moveAllShapesTo(List<Shape> shapes, Vector2 point) { for(Shape shape : shapes) shape.setPosition(point); } ```
and so on.
But it's have not implemented contains(Ellipse) & overlaps(Ellipse) in Ellipse.java and contains(Polygon) & overlaps(Polygon) in Polygon.java. Maybe it's have sense to remove these methods from Shape.java. 
And as you can see Rectangle.set / setPosition / setSize returns void instead of Rectangle ( for method chaining ). If it's really need here it can be added to Shape.java for all classes.