diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index 4b30ff134f0454715271782c9263fe18c9657531..b4a8dc93e1130745870722c1c429c4f966cfeb8d 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -10,9 +10,11 @@
   </component>
   <component name="ChangeListManager">
     <list default="true" id="8239070f-6583-4d64-a292-d827a40a35ed" name="Default" comment="">
+      <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/built_in.c" beforeDir="false" afterPath="$PROJECT_DIR$/src/built_in.c" afterDir="false" />
       <change beforePath="$PROJECT_DIR$/src/commands.c" beforeDir="false" afterPath="$PROJECT_DIR$/src/commands.c" afterDir="false" />
-      <change beforePath="$PROJECT_DIR$/src/utils.c" beforeDir="false" afterPath="$PROJECT_DIR$/src/utils.c" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/main.c" beforeDir="false" afterPath="$PROJECT_DIR$/src/main.c" afterDir="false" />
+      <change beforePath="$PROJECT_DIR$/src/signal_handlers.c" beforeDir="false" afterPath="$PROJECT_DIR$/src/signal_handlers.c" afterDir="false" />
     </list>
     <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
     <option name="TRACKING_ENABLED" value="true" />
@@ -22,59 +24,37 @@
     <option name="LAST_RESOLUTION" value="IGNORE" />
   </component>
   <component name="FileEditorManager">
-    <splitter split-orientation="horizontal" split-proportion="0.53512233">
+    <splitter split-orientation="horizontal" split-proportion="0.5676721">
       <split-first>
-        <leaf>
-          <file leaf-file-name="built_in.c" pinned="false" current-in-tab="true">
+        <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
+          <file leaf-file-name="built_in.c" pinned="false" current-in-tab="false">
             <entry file="file://$PROJECT_DIR$/src/built_in.c">
               <provider selected="true" editor-type-id="text-editor">
-                <state relative-caret-position="153">
-                  <caret line="76" column="25" lean-forward="true" selection-start-line="76" selection-start-column="25" selection-end-line="76" selection-end-column="25" />
+                <state relative-caret-position="-459">
+                  <caret line="41" column="20" selection-start-line="41" selection-start-column="20" selection-end-line="41" selection-end-column="20" />
                 </state>
               </provider>
             </entry>
           </file>
           <file leaf-file-name="built_in.h" pinned="false" current-in-tab="false">
             <entry file="file://$PROJECT_DIR$/include/built_in.h">
-              <provider selected="true" editor-type-id="text-editor">
-                <state relative-caret-position="-684" />
-              </provider>
-            </entry>
-          </file>
-          <file leaf-file-name="commands.h" pinned="false" current-in-tab="false">
-            <entry file="file://$PROJECT_DIR$/include/commands.h">
-              <provider selected="true" editor-type-id="text-editor" />
-            </entry>
-          </file>
-          <file leaf-file-name="signal_handlers.h" pinned="false" current-in-tab="false">
-            <entry file="file://$PROJECT_DIR$/include/signal_handlers.h">
-              <provider selected="true" editor-type-id="text-editor" />
-            </entry>
-          </file>
-          <file leaf-file-name="utils.h" pinned="false" current-in-tab="false">
-            <entry file="file://$PROJECT_DIR$/include/utils.h">
               <provider selected="true" editor-type-id="text-editor" />
             </entry>
           </file>
-          <file leaf-file-name="main.c" pinned="false" current-in-tab="false">
+          <file leaf-file-name="main.c" pinned="false" current-in-tab="true">
             <entry file="file://$PROJECT_DIR$/src/main.c">
               <provider selected="true" editor-type-id="text-editor">
-                <state relative-caret-position="95">
-                  <caret line="14" selection-start-line="14" selection-end-line="14" />
+                <state relative-caret-position="266">
+                  <caret line="14" column="31" selection-start-line="14" selection-start-column="31" selection-end-line="14" selection-end-column="31" />
                 </state>
               </provider>
             </entry>
           </file>
-          <file leaf-file-name="signal_handlers.c" pinned="false" current-in-tab="false">
-            <entry file="file://$PROJECT_DIR$/src/signal_handlers.c">
-              <provider selected="true" editor-type-id="text-editor" />
-            </entry>
-          </file>
           <file leaf-file-name="utils.c" pinned="false" current-in-tab="false">
             <entry file="file://$PROJECT_DIR$/src/utils.c">
               <provider selected="true" editor-type-id="text-editor">
-                <state relative-caret-position="95">
-                  <caret line="17" lean-forward="true" selection-start-line="17" selection-end-line="17" />
+                <state relative-caret-position="225">
+                  <caret line="17" selection-start-line="17" selection-end-line="17" />
                 </state>
               </provider>
             </entry>
@@ -82,21 +62,30 @@
         </leaf>
       </split-first>
       <split-second>
-        <leaf>
+        <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
           <file leaf-file-name="utils.c" pinned="false" current-in-tab="false">
             <entry file="file://$PROJECT_DIR$/src/utils.c">
               <provider selected="true" editor-type-id="text-editor">
-                <state relative-caret-position="342">
-                  <caret line="27" column="1" lean-forward="true" selection-start-line="27" selection-start-column="1" selection-end-line="27" selection-end-column="1" />
+                <state relative-caret-position="330">
+                  <caret line="41" selection-start-line="41" selection-end-line="41" />
                 </state>
               </provider>
             </entry>
           </file>
-          <file leaf-file-name="commands.c" pinned="false" current-in-tab="true">
+          <file leaf-file-name="commands.c" pinned="false" current-in-tab="false">
             <entry file="file://$PROJECT_DIR$/src/commands.c">
               <provider selected="true" editor-type-id="text-editor">
-                <state relative-caret-position="57">
-                  <caret line="69" column="63" lean-forward="true" selection-start-line="69" selection-start-column="63" selection-end-line="69" selection-end-column="63" />
+                <state relative-caret-position="496">
+                  <caret line="91" selection-start-line="91" selection-end-line="91" />
+                </state>
+              </provider>
+            </entry>
+          </file>
+          <file leaf-file-name="signal_handlers.c" pinned="false" current-in-tab="true">
+            <entry file="file://$PROJECT_DIR$/src/signal_handlers.c">
+              <provider selected="true" editor-type-id="text-editor">
+                <state relative-caret-position="95">
+                  <caret line="5" column="21" selection-start-line="5" selection-start-column="21" selection-end-line="5" selection-end-column="21" />
                 </state>
               </provider>
             </entry>
@@ -118,10 +107,11 @@
   <component name="IdeDocumentHistory">
     <option name="CHANGED_PATHS">
       <list>
-        <option value="$PROJECT_DIR$/src/main.c" />
+        <option value="$PROJECT_DIR$/src/built_in.c" />
         <option value="$PROJECT_DIR$/src/utils.c" />
         <option value="$PROJECT_DIR$/src/commands.c" />
-        <option value="$PROJECT_DIR$/src/built_in.c" />
+        <option value="$PROJECT_DIR$/src/main.c" />
+        <option value="$PROJECT_DIR$/src/signal_handlers.c" />
       </list>
     </option>
   </component>
@@ -135,10 +125,10 @@
     <packageJsonPaths />
   </component>
   <component name="OCFindUsagesOptions" text="true" ivars="false" properties="true" derivedClasses="false" />
-  <component name="ProjectFrameBounds" extendedState="6">
-    <option name="x" value="427" />
-    <option name="width" value="1500" />
-    <option name="height" value="1089" />
+  <component name="ProjectFrameBounds">
+    <option name="x" value="70" />
+    <option name="width" value="1878" />
+    <option name="height" value="1448" />
   </component>
   <component name="ProjectView">
     <navigator proportions="" version="1">
@@ -176,7 +166,7 @@
   </component>
   <component name="PropertiesComponent">
     <property name="WebServerToolWindowFactoryState" value="false" />
-    <property name="last_opened_file_path" value="$PROJECT_DIR$" />
+    <property name="last_opened_file_path" value="$PROJECT_DIR$/../workspace/shell" />
   </component>
   <component name="RunDashboard">
     <option name="ruleStates">
@@ -201,33 +191,34 @@
       <option name="presentableId" value="Default" />
       <updated>1525613937527</updated>
       <workItem from="1525613939581" duration="14984000" />
+      <workItem from="1525845591506" duration="9150000" />
     </task>
     <servers />
   </component>
   <component name="TimeTrackingManager">
-    <option name="totallyTimeSpent" value="14984000" />
+    <option name="totallyTimeSpent" value="24134000" />
   </component>
   <component name="ToolWindowManager">
-    <frame x="55" y="-7" width="1488" height="878" extended-state="6" />
+    <frame x="56" y="0" width="1502" height="1158" extended-state="0" />
     <editor active="true" />
     <layout>
-      <window_info active="true" content_ui="combo" id="Project" order="0" visible="true" weight="0.13704206" />
+      <window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.13104838" />
       <window_info anchor="bottom" id="TODO" order="6" />
-      <window_info anchor="bottom" id="Messages" />
-      <window_info anchor="bottom" id="Event Log" side_tool="true" />
+      <window_info anchor="bottom" id="Event Log" order="7" side_tool="true" />
       <window_info anchor="bottom" id="Run" order="2" />
-      <window_info anchor="bottom" id="Version Control" />
+      <window_info anchor="bottom" id="Version Control" order="7" />
       <window_info id="Structure" order="1" side_tool="true" weight="0.25" />
-      <window_info anchor="bottom" id="Terminal" visible="true" weight="0.16361256" />
+      <window_info active="true" anchor="bottom" id="Terminal" order="7" visible="true" weight="0.30938697" />
       <window_info anchor="bottom" id="Debug" order="3" weight="0.4" />
-      <window_info id="Favorites" side_tool="true" />
-      <window_info anchor="bottom" id="Find" order="1" />
-      <window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
-      <window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
+      <window_info id="Favorites" order="2" side_tool="true" />
       <window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
+      <window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
+      <window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
       <window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
+      <window_info anchor="bottom" id="Find" order="1" />
       <window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
       <window_info anchor="bottom" id="Message" order="0" />
+      <window_info anchor="bottom" id="Messages" order="7" />
     </layout>
   </component>
   <component name="TypeScriptGeneratedFilesManager">
@@ -237,48 +228,72 @@
     <option name="myLimit" value="2678400000" />
   </component>
   <component name="editorHistoryManager">
-    <entry file="file://$PROJECT_DIR$/include/built_in.h">
+    <entry file="file://$PROJECT_DIR$/src/built_in.c">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="-684" />
+        <state relative-caret-position="1444">
+          <caret line="76" column="25" lean-forward="true" selection-start-line="76" selection-start-column="25" selection-end-line="76" selection-end-column="25" />
+        </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/include/commands.h">
-      <provider selected="true" editor-type-id="text-editor" />
-    </entry>
-    <entry file="file://$PROJECT_DIR$/include/signal_handlers.h">
-      <provider selected="true" editor-type-id="text-editor" />
-    </entry>
-    <entry file="file://$PROJECT_DIR$/include/utils.h">
+    <entry file="file://$PROJECT_DIR$/include/built_in.h">
       <provider selected="true" editor-type-id="text-editor" />
     </entry>
     <entry file="file://$PROJECT_DIR$/src/main.c">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="95">
+        <state relative-caret-position="266">
           <caret line="14" selection-start-line="14" selection-end-line="14" />
         </state>
       </provider>
     </entry>
-    <entry file="file://$PROJECT_DIR$/src/signal_handlers.c">
-      <provider selected="true" editor-type-id="text-editor" />
+    <entry file="file://$PROJECT_DIR$/src/utils.c">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="513">
+          <caret line="27" column="1" lean-forward="true" selection-start-line="27" selection-start-column="1" selection-end-line="27" selection-end-column="1" />
+        </state>
+      </provider>
     </entry>
     <entry file="file://$PROJECT_DIR$/src/commands.c">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="57">
+        <state relative-caret-position="1311">
           <caret line="69" column="63" lean-forward="true" selection-start-line="69" selection-start-column="63" selection-end-line="69" selection-end-column="63" />
         </state>
       </provider>
     </entry>
+    <entry file="file://$PROJECT_DIR$/include/built_in.h">
+      <provider selected="true" editor-type-id="text-editor" />
+    </entry>
     <entry file="file://$PROJECT_DIR$/src/utils.c">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="95">
-          <caret line="17" lean-forward="true" selection-start-line="17" selection-end-line="17" />
+        <state relative-caret-position="330">
+          <caret line="41" selection-start-line="41" selection-end-line="41" />
         </state>
       </provider>
     </entry>
     <entry file="file://$PROJECT_DIR$/src/built_in.c">
       <provider selected="true" editor-type-id="text-editor">
-        <state relative-caret-position="153">
-          <caret line="76" column="25" lean-forward="true" selection-start-line="76" selection-start-column="25" selection-end-line="76" selection-end-column="25" />
+        <state relative-caret-position="-459">
+          <caret line="41" column="20" selection-start-line="41" selection-start-column="20" selection-end-line="41" selection-end-column="20" />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/commands.c">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="496">
+          <caret line="91" selection-start-line="91" selection-end-line="91" />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/main.c">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="266">
+          <caret line="14" column="31" selection-start-line="14" selection-start-column="31" selection-end-line="14" selection-end-column="31" />
+        </state>
+      </provider>
+    </entry>
+    <entry file="file://$PROJECT_DIR$/src/signal_handlers.c">
+      <provider selected="true" editor-type-id="text-editor">
+        <state relative-caret-position="95">
+          <caret line="5" column="21" selection-start-line="5" selection-start-column="21" selection-end-line="5" selection-end-column="21" />
         </state>
       </provider>
     </entry>
diff --git a/src/built_in.c b/src/built_in.c
index 3e02de7b2fcd2fa5c853bf0a87dcbc6c570fcd45..0c55a9a73d52b6636061ee82547c879f324e1537 100644
--- a/src/built_in.c
+++ b/src/built_in.c
@@ -37,6 +37,9 @@ int do_fg(int argc, char** argv) {
   if (!validate_fg_argv(argc, argv))
     return -1;
 
+  int pid;
+  pid = getpid();
+  printf("%d running\n", pid);
   // TODO: Fill this.
 
   return 0;
diff --git a/src/commands.c b/src/commands.c
index 6a87091266c16e1952b0fa54b72d95bd7a5aacf3..5d4ad560e447e3e89c26d35a5e22730c8a5319b2 100644
--- a/src/commands.c
+++ b/src/commands.c
@@ -36,6 +36,7 @@ int evaluate_command(int n_commands, struct single_command (*commands)[512])
     assert(com->argc != 0);
 
     int built_in_pos = is_built_in_command(com->argv[0]);
+
     if (built_in_pos != -1) {
       if (built_in_commands[built_in_pos].command_validate(com->argc, com->argv)) {
         if (built_in_commands[built_in_pos].command_do(com->argc, com->argv) != 0) {
diff --git a/src/main.c b/src/main.c
index 196ccfd94b978c8d9647ca3ca3c2ec3ab06d1fcf..961a5dc957cdb82cca5234347fbd80a5c556e5fb 100644
--- a/src/main.c
+++ b/src/main.c
@@ -1,15 +1,19 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
-
+#include <signal.h>
 #include "commands.h"
 #include "built_in.h"
 #include "utils.h"
+#include "signal_handlers.h"
 
 int main()
 {
   char buf[8096];
 
+  signal(SIGINT, catch_sigint);
+  signal(SIGTSTP, catch_sigtstp);
+
   while (1) {
     fgets(buf, 8096, stdin);
 
diff --git a/src/signal_handlers.c b/src/signal_handlers.c
index fbc6c931771559aff1144c71563fc638afaf7791..e1684c30f69c31c1ae3e0c47666896dd61bec247 100644
--- a/src/signal_handlers.c
+++ b/src/signal_handlers.c
@@ -1,11 +1,14 @@
 #include "signal_handlers.h"
+#include <signal.h>
 
 void catch_sigint(int signalNo)
 {
   // TODO: File this!
+    signal(SIGINT, SIG_IGN);
 }
 
 void catch_sigtstp(int signalNo)
 {
   // TODO: File this!
+    signal(SIGTSTP, SIG_IGN);
 }