A Sinatra authentication extension inspired in part by devise and part collection repeatedly used code