added some headphones feature

a lot of stuff messed up, need to fix the errors brought by upgrading to
the latest master branch