menu function

- First pass at making a generalized menu function that simply takes
screen position and a vector with the variable number of options

Used smart pointers to avoid leaks from use of new console.