use boost::optional as a return value of getMeshNodeIDForPoint()
add a general searching function for any geometric types in MeshNodeSearcher
replace dynamic_cast with static_cast
write an object type explicitly
Merge pull request #453 from norihiro-w/add-getmeshnode

Add a general node searching function for any geometric types