Solution:
Conjunction used by A is true only if both parts are true. Under the assumption that B is an honest man, then A would be honest too (B says so) and so B would be a liar as A said, which would be a conflict. So B is a liar. And knowing that, B actually said that A is a liar, too. First statement of A is thus a lie and B is not a lying monkey. However, B is lying which means he is not a monkey. B is a lying man. The second statement of A indicates that A is a monkey – so A is a lying monkey.