As suggested above; reading a file should be an explicit statement and not implicit in the set method; this will decrease complexity and magic behaviour