Ranking IK Solutions (#423)
* init
* Fixing const-correctness in state space
* update structure
* make format
* source for base ranking class
* make format
* add general sorting
* make format
* preallocate size of ranking vector
* nit todo removed
* remove unnecessary headers + new strategies
* make format
* remove redundant virtual keyword
* add FIFO to ranking strategy
* add source scripts for ranking strategies
* assign the base class members first
* make format
* add sources to read later
* correct macro for header-guard
* tests for FIFO + cleanup
* Fixing const-correctness of StateHandle
* Fix implicit conversion of StateHandle to State*
* Undo unnecessary changes
* Remove incorrect comment
* Add clone to StateSpace
* Format code
* test for the bug
* bug fix in adding IK solutions
* comment out unused variables
* nit comments
* Update changelog
* Update CHANGELOG.md
* WIP: Random restructuring to test stuff
* change API
* make format
* nominal configuration strategy
* test for nominal configuration strategy
* restructure the code into distance
* enable base class and nominal configuration ranker
* bring back test for nominal config ranker + check distances
* simplify the test script
* bring bakc joint avoidance ranker
* simplify the code
* make format
* clean up test scripts
* joint avoidance strategy
* consider cyclic joints
* make format
* make tests uniform
* update log
* simplify and address PR comments
* modify joint avoidance. TODO: change to indices of unbounded limits?
* modify constructor to take nominal configuration as parameter
* make format
* add docstring
* work with indices
* make format
* convenience function to get state without creating it explicitly
* simplify code
* make format
* update log
* edit docstrings
* use cartesianproduct state space
* add docstrings
* create limits states in ctr; use cartesian sspace.
* make format
* move helper function to anonymous namespace
* rename variables and functions for increased clarity
* make format
* simplify tests scripts
* remove unnecessary clone
* make format
* take in scoped states as expected during planning
* make format
* remove function outside scope of the PR
* remove getter for statespace; use MetaSkeletonStateSpace
* remove const-cast
* make format
* address concerns over state; cleanup
* remove unnecessary header
* remove unnecesary header
* make ranking efficient; address nit comments
* make format
* Refactor and fix weird bug.