Rewrote File, FileRef and FileStream to use smart pointers
Merge pull request #206 from TsudaKageyu/smartptrfile

Rewrote File, FileRef and FileStream to use smart pointers