Any ideas how to increase floating point accuracy?

What happens if you declare everything double, instead of float? That would be my first step if I think I'm running into float precision limits.

*edit: oops, just actually read the info on double in the reference. I had seen double was listed under data types so I assumed Arduino could do double, but apparently not. I was under the impression Arduino was a straightforward C implementation, are there any other caveats to C that one should be aware of?