Add pagination and clean up tests

Thanks lawson!
Tricky math here. What if you did `(Float(Article.count) / Float(Article::PER_PAGE)).ceil` ? Might consider something like that for improved readability.