initial pagination support. closes #3