Use Base.(at)mathconst, add sintau, costau, modtau

It's not actually necessary to define `@mathconst`--you just have to write the last term as an expression.  In this PR, I chose to write it as `(2*big(pi))`, but you could define it directly as 

```julia
BigFloat("6.283185307179586476925286766559005768394338798750211641949889184615632812572417997256069650684234135964296173026564613294187689219101164463450718816256")
```

which is (almost) how you wrote it in your current version, except that the quotes are necessary.  Without the quotes, the number is interpreted as a `Float64` and loses most of the precision.  (Try `tau - 2*big(pi)` with your current version.)