renamed some methods to mark them as private
picker now attempts to stay on the page if it would otherwise pass the right hand boundary