do not preload all theme templates

We don't need to load templates we don't use, but also we don't need to
write a method for the Store to be able to find all the templates.
add read_file method to store

This method allows for reading of any file in the store, which we can
use to complete the API for Themes.
use store read_file in theme

This removes another part where Theme breaks the Store abstraction.
This leaves only the include_dirs left.

Refs #13
add has_file method to Store

This method lets us check for files before we try to read them, which is
useful when looking for template includes.
use store instead of include_dirs to find includes

This removes the last breakage of the Store API.

Fixes #13