initial support for reading files