Copy and truncate rational results exactly

Bug: 26966394
Bug: 26175989

Provide a separate BoundedRational toString() function to handle
generation of decimal strings from rational results.  This ensures
that rational result are always displayed as correctly truncated.
Use this facility to generate an exact representation when copying
a rational result, and when doing so is appropriate.

Includes some minor related changes to the same code:

- Refuse to copy a result that is currently being evaluated.
- Increase the bound on rational size again, to make all of this
  more effective.
- Remove one line of dead code, and fix some comments, etc.

Change-Id: I5f72d5e47849ceeb2f1b6be870eb2a64edd5d508
diff --git a/src/com/android/calculator2/Calculator.java b/src/com/android/calculator2/Calculator.java
index dc08612..4f0de6c 100644
--- a/src/com/android/calculator2/Calculator.java
+++ b/src/com/android/calculator2/Calculator.java
@@ -939,8 +939,8 @@
      * Map them to the appropriate button pushes when possible.  Leftover characters
      * are added to mUnprocessedChars, which is presumed to immediately precede the newly
      * added characters.
-     * @param moreChars Characters to be added.
-     * @param explicit These characters were explicitly typed by the user, not pasted.
+     * @param moreChars characters to be added
+     * @param explicit these characters were explicitly typed by the user, not pasted
      */
     private void addChars(String moreChars, boolean explicit) {
         if (mUnprocessedChars != null) {