add remainder method to Scalar
remove BigDecimal support

Decided it just never makes sense to use BigDecimal in this context. It
especially gains nothing when angles come into play, because most trig
functions are going to be dealing with irrational values anyway.

Switching the test from BigDecimal to Double uncovered an error.
Dividing a BigDecimal by 0 threw ArithmeticException, but dividing a
Double by 0 returns Infinity. I don't know any decent way around this,
so I'm just going to drop that test and probably forget about it and
hope it's never an issue.
give up on Scalar type class, use Double

Trying to be generic over Float and Double was, more trouble than it
was worth. I found myself left with two similarly unappealing options:

1) Keep the context bound for S at the class level. This is not too
   bad syntactically, but it results in an extra field on every class
   that is parameterized on S.

2) Move the context bound to the method level. This adds a lot of
   boilerplate; every method on Vector would need to declare that
   implicit parameter and import from it. This code explosion would
   likely have continued into most other classes as well.

Because *every* class and method in which S is involved needs the
Scalar type class, it just got too cumbersome to deal with.

This is quite disappointing, and I'm starting to feel like Scala has to
some extent failed in its goal of enabling code that is both generic and
efficient.
define value classes Angle and Radians
add arithmetic to Angular types
add PolarVector, spice up Angular

There's a test failing due to rounding error, which means I finally
need to get around to addressing fuzzy vector comparison.