Conjugacy in Braid Groups and related Problems + Applications in non-commutative cryptography