Add detail to watches, and provide consistent toString() for all calculables