Instead of using the pythagorean theorem you can use trig. First get the difference between the x and y of your points
float x = curLocation.coordinate.latitude - setLocation.coordinate.latitude;
float y = curLocation.coordinate.longitude - setLocation.coordinate.longitude;
Then use arctangent to get the angle.
float angle = atan2(y,x);
If you want all positve values, add this line:
if(angle<0) angle += 2.0*M_PI;
Then if you want to use degrees (0-360) instead of radians, convert using this line:
angle = angle * (180/M_PI);
And for your booleans. You will be pointing east when the angle is greater than 270° or less than 90°. You will be pointing north when the angle is between 0° and 180°.
east = (angle >= 270) || (angle <= 90);
north = (angle >= 0) && (angle <= 180);