Bug 1043822 - Support SW Vsync Timer

Use nanosleep to implement SW Vsync Timer
Bug 1048667 - Part1: silk preference
vsync protocol and dispatch framework
implement GonkVsyncDispatcher
enable silk
rename StartUp -> startup, ShutDown->Shutdown.
fix if-else indent.
hide nullptr at VsyncDispatcher.h
delete the top level protocol actor at main thread
use nsRefptr instead of scoped_refptr
remove redundant comment
Hwc calls the VsyncDispatcher directly
Hide VsyncDispatcherHost/Client to all module
add refcounting for VsyncObserver
remove the checking for new operation
fix SyncAdd done flag memory corruption problem
release top-level protocol resource at destructor
add thread checking for every VD function
fix VsyncTickTask() comment
provide the direct call for add/remove in ObserverListHelper
add comment for XXXtrigger
change GetVsyncRate() to const function
change the uint of vsync frame number to uint64_t
refactor VD
refactor platform dependent vsync timer
fix hwc silk preference
fix observer list unregister function bug
rename VsyncTickTask() function name
update comment
fix typo for frame number checking
forgot to init the frame count at client side