title: Finding Signed Angle Between Vectors
body: <p>How would you find the signed angle theta from vector a to b?</p>
  
  <p>And yes, I know that theta = arccos((a.b)/(|a||b|)).</p>
  
  <p>However, this does not contain a sign (i.e. it doesn't distinguish between a clockwise or counterclockwise rotation).</p>
  
  <p>I need something that can tell me the minimum angle to rotate from a to b. A positive sign indicates a rotation from +x-axis towards +y-axis. Conversely, a negative sign indicates a rotation from +x-axis towards -y-axis.</p>
  
  <pre><code>assert angle((1,0),(0,1)) == pi/2.
  assert angle((0,1),(1,0)) == -pi/2.
  </code></pre>