Code drop enabling import functionality (+fixes).

Major feature:
- Effective now, files and filesets can be imported:
    import file name=bigfile, path=/tmp/bigfile.dat
    import fileset name=homedir, path=/home/gamvrosi
  For every imported file, the following attributes are supported: name, path,
  readonly*, trusttree*, cached*. For every imported fileset, the following
  attributes are supported: name, path, prealloc, entries, size, readonly*,
  trusttree*, cached*. Attributes followed by * are still considered. Leafdirs
  is not part of the fileset attributes at this point.

  Briefly: when an imported fileset is populated, the 'prealloc' attr is used
  to determine the size of the fileset, by assuming that the imported files
  correspond to the preallocated set (this allows additional files to be
  populated for future 'create' events). If the 'prealloc' attr is missing,
  'entries' is consulted for the total number of files.

  Note: created files are uniformly dispersed across existing directories.

Bug fixes, and changes:
- Grammar rules have been renamed for simplification. Tokens have been tidied
  up a bit too.
- parser_fileset_define_common is now parser_fileset_init_common and shared
  between define and import.
- fileset_resolvepath restored to prior state. No need for including the root
  path component any longer.
- fileset_getpath simplified to match the new _resolvepath.
- FB_PREFIX is used to name all filebench-created files/dirs. In the future,
  this (or a similar suffix) should be exposed to the user. It will make it
  easier to guarantee that fb-generated files are easily distinguishable
- leafdirs currently not counted during creation (message was misleading).
  This will be properly patched soon.
- fileset_dump: fixed memory leaks and beautification of output.