inital work for #2, currently untested
forgot to add new dependency to Gemfile
more work for #2, cleaning inputs and handling different types