What is using up all the RAM in my program?
There is a lot you are missing.  Such as:


SoftwareSerial is using RAM.
The system stack is using RAM.
The Arduino core software is using RAM.


There's plenty more going on than just your sketch. For instance, where do you think it stores the current millis() and micros() counts? Where do you think incoming serial data gets buffered? Where do you think your registers, PC, etc, get stashed when a function (such as setup()) is called? All that takes RAM.