I am using EDB and stepping through the program but I do not even know what the difference in behavior is when doing this.  I feel like this is something I should know if I ever have hope of reverse engineering this program.
What is the difference between step into and step over when debugging?
ida;disassembly;debuggers;gdb;debugging
The gdb terms (and commands) are step and next and the difference is that step continues to run until it changes line of source code, while next doesn't trace into a subroutine, but rather skips over it. The stepi and nexti commands are similar but operate at the machine instruction level rather than source code level. Read more in The Fine Manual.