* Use boost::noncopyable for File
 * Change all destructor of File to virtual
 + Added comments