Instead of binary classification, I would like to classify the samples into class A and class B. if class A, then further into A1, A2, A3. Similarly B into B1 & B2. What classifier to use? Which tool?
Sounds like a decision tree. If you know the "structure" of your classes you could build the decision tree by hand, where at each node there would be an arbitrary classifier.
You could also have a look at hierarchical SVMs (http://www.csr.utexas.edu/hyperspectral/oldwebsite/yangchi/HSVM.htm).
Some years back I developed an algorithm that autonomously builds a hierarchical classifier. This might not be what you are looking for since in my case you would specify only the lower level classes and the algorithm would autonomously construct the "aggregated" or higher level classes. You can check it out here: https://www.researchgate.net/publication/2474715_ARTD_Autonomous_Recursive_Task_Decomposition_for_Many-Class_Learning
Article ARTD: Autonomous Recursive Task Decomposition for Many-Class Learning
Hierarchical classification like you proposed is an open problem in machine learning. There exists some proposes like those bellow applied to biological data but the classifiers are developed for each specific domain:
Multiclass Support Vector Machines can be considered in same extent as a hierarchical model, for instance you can see the following paper available at researchgate.
We are currently developing the R library for its use.
Article: SVMTOCP: A Binary Tree Base SVM Approach through Optimal Multi-class Binarization