added search, pagination, and a little AJAX