Cleaner C++11 Stack solution by using perfect forwarding

Updated to use a new technique that saves a few lines of code by combining two overloaded functions. All around improvement. :)