removed superfluous fuse-internals.c; added user-guide.lyx

Conflicts:
	glusterfs-fuse/src/fuse-internals.c
Previous commit was causing deadlocks. Hence undoing it
deadlocks are fixed now (And I've tested it this time :)).
unify and fixes
unify_lookup_cbk - off by one allocation error caused heap corruption
                 - free local->list when op_ret = -1

afr_close_cbk - destroy afrctx dictionary

fuse_loc_fill - get parent inode directly from inode instead of second search
* bug fix in unify_lookup_cbk (local->list was getting double free'd)
io-cache offers user configurable priority based pruning
* user can now provide priority for certain files to be cached.
   - spec file option will be "option priority <pattern-1>:<priority-1>,<pattern-2>:<priority-2>,..."
* io-cache maintains different lru lists of ioc_inode for different priority levels.
* ioc_prune() prunes the pages of lower or same priority inode's pages to accomodate for a inode's cache space.
libglusterfs - print backtrace to log fd directly without going via f*/gf* functions

io-cache - fix segfault when no priorities are listed
         - make number of lru lists dynamic (from static 5)
minor fixes in io-cache
io-cache - hold table lock before moving ioc-inode up the lru list in
io-cache - re-use calculated weight in open_cbk
* changes in client-protocol.c to send inode/fd instead of NULL in case of failure. (in _cbk().)

* now unify has checks for all the arguments it gets. Most of the variables are validated, before using them.
io-cache pruning changes
* cache pruning changed.
   - suppose N bytes is the excess usage in cache above table->cache_size.
   - ioc_prune() traverses the ioc_inode lru list, starting from the lowest priority ioc_inodes.
   - pruned_size is considered to be the size of all the pages traversed.
   - pruning breaks when pruned_size >= N.
* this way we make sure that a lower priority ioc_inode does not prune out pages from ioc_inode of higher priority.
* added data_from_int8, data_to_int8 in dict.c/h

* removed openfd list in unify.
* some minor bug fixes.
io-cache minor change
* changed ioc_prune() prototype to accept only ioc_table.
* minor bug fix in unify (refering inode in case of op_ret == -1, used to work earlier.. changed now)

* stripe translator migration to 'no lists'. Now saw the improved performance in case of dbench. but still has some bugs, as glusterfs compilation over glusterfs has some errors.
  doubt read/write order etc. need some more testing.

Conflicts:
	xlators/cluster/stripe/src/stripe.c
fixes in fuse-bridge related to hardlink handling

fuse-bridge - update dcache with new parent/name instead of letting next lookup update it
inode - do not list_del_init on embedded dentry member of inode in dentry_unset ()
Use poll in case epoll system call is not implemented but library wrapper is present(HAVE_SYS_EPOLL_H will defined since wrapper is present)
* removed warnings in transport.c

* check for dict_get == NULL, in case of write-behind, io-cache, io-threads.
changes to afr to use a simple array storing errnos instead of linkedlist of gic. changes to data_to_[int|uint] functions to take into account the data whose strings are not NULL terminated. change to posix to use calloc instead of alloca in getxattr (as it should be preserved when it is dict_ref'ed.
io-cache - fix in io-cache's _lk to do extra str_to_ptr ()
protocol/client - log cases when inode's ctx is null
storage/posix - initialize glusterfsd_stats_nr_client
poll_iteration doesnot complain about invalid poll_type when glusterfsd is run with server protocol removed
libglusterfs/inode - fix inode_parent() function
afr - set local->op_ret = 0 when success