use pointers in file_line_iterable

this fixes a bug that was happening when i did that weird instantiation
of the ifstream. i had to also make it boost::noncopyable since we can't
copy that ifstream anyway.