 fs = require 'fs-plus'
 Grim = require 'grim'
 
-Q = require 'q'
 runas = null # Defer until used
 iconv = null # Defer until used
 

  # Public: Returns a promise that resolves to the file's completely resolved {String} path.
  getRealPath: ->
    if @realPath?
      Q(@realPath)
    else
      Q.nfcall(fs.realpath, @path).then (realPath) =>
        @realPath = realPath

  # Public: Return the {String} filename without any directory information.
  getBaseName: ->

  # Public: Returns a promise that resolves to a {Boolean}, true if the file
  # exists, false otherwise.
  exists: ->
    new Promise (resolve) =>
      fs.exists @getPath(), resolve

  # Public: Returns a {Boolean}, true if the file exists, false otherwise.
