large refactor of single article view