@Test
	public void angleBetweenPointsTest() {
		Point p1 = new Point(0,0);
		Point p2 = new Point(8,5);
		Point p3 = new Point(7.5, 7);
		assertEquals(new Angle(45.0), p1.angleBetween(new Point(5,5)));
		assertEquals(new Angle(225.0), new Point(5,5).angleBetween(p1));		
		
		// test opposite
		for (int i = 0; i < TESTS; i++) {
			p1 = new Point(rand.nextInt(), rand.nextInt());
			Point pt = new Point(rand.nextInt(), rand.nextInt());
			Angle angle = p1.angleBetween(pt);
			assertEquals(angle.add(new Angle(180)), pt.angleBetween(p1));
		}
	}