Added ReservedFunctions interface and extended Function to enable the
use of the methods out of the function class.

Added pop management for function return values that don't get saved.

Thanks to Marc for suggested the magic!