Make text appear in GUI console, Zip install works.

Move TW zip install code to C++ so that it can use the
ui->functions.
Bring in mincrypt code to fix a crash during signature
checking.
diff --git a/gui/action.cpp b/gui/action.cpp
index 3e19a61..a1f7dd3 100644
--- a/gui/action.cpp
+++ b/gui/action.cpp
@@ -28,7 +28,9 @@
 #include "../recovery_ui.h"
 #include "../extra-functions.h"
 #include "../variables.h"
+#include "../twinstall.h"
 
+int TWinstall_zip(const char* path, int* wipe_cache);
 void fix_perms();
 void wipe_dalvik_cache(void);
 int check_backup_name(int show_error);
@@ -656,6 +658,7 @@
 					ui_print("TWRP injection complete.\n");
 				}
 			}
+			PartitionManager.Update_System_Details();
 			operation_end(ret_val, simulate);
             return 0;
         }
diff --git a/gui/console.cpp b/gui/console.cpp
index 6d53ed1..b7713c7 100644
--- a/gui/console.cpp
+++ b/gui/console.cpp
@@ -38,6 +38,8 @@
     vsnprintf(buf, 512, fmt, ap);
     va_end(ap);
 
+	fputs(buf, stdout);
+
     char *start, *next;
 
 	if (buf[0] == '\n' && strlen(buf) < 2) {
@@ -75,6 +77,8 @@
     vsnprintf(buf, 512, fmt, ap);
     va_end(ap);
 
+	fputs(buf, stdout);
+
     // Pop the last line, and we can continue
     if (!gConsole.empty())   gConsole.pop_back();
 
diff --git a/gui/gui.h b/gui/gui.h
index f6745d7..948e11b 100644
--- a/gui/gui.h
+++ b/gui/gui.h
@@ -5,6 +5,8 @@
 int gui_init();
 int gui_loadResources();
 int gui_start();
+void gui_print(const char *fmt, ...);
+void gui_print_overwrite(const char *fmt, ...);
 
 #endif  // _GUI_HEADER