adding compression and cacheing

Signed-off-by: Brandon Ewoldt <bewoldt1@gmail.com>