Skeleton has mInitPose and SkeletonDynamics has mInitQDotVector. SkeletonDynamics is able to backup its state with backupInitState() and restore with restoreInitState().

World is able to reset the states of all skeletons with reset(().

TODO: We can consider better ways for this functionalities.
Merge remote-tracking branch 'refs/remotes/origin/master' into state_backup
Merge remote-tracking branch 'refs/remotes/origin/master' into gazebo_support
remove World::steps() and World::step(double).
add ContactDynamics::setTimeStep(double) and ContactDynamics::getTimeStep()
Merge branch 'refs/heads/state_backup' into gazebo_support
FIx bug in World::reset() and World::getSkeleton(const char*)
Fix bugs.
Merge remote-tracking branch 'refs/remotes/origin/master' into gazebo_support
Merge remote-tracking branch 'refs/remotes/origin/master' into gazebo_support

Conflicts:
	src/simulation/World.cpp
add apps/spheres.
Add comment to apps/spheres
Merge remote-tracking branch 'refs/remotes/origin/master' into gazebo_support

Conflicts:
	apps/CMakeLists.txt
Add ignores
Move evalVelocity() and evalOmega() from BodyNodeDynamics class to BodyNode class because these functions are related with kinematics not dynamics.
Move evalVelocity() and evalOmega() from BodyNodeDynamics class to BodyNode class because these functions are related with kinematics not dynamics.
Add interface for forward kinematics.
Add interface for forward kinematics.
Allow to use multiple collision detection libraries.
Merge branch 'origin/master'