rename player to backend
split player from app
Re-factored mixers into classes

Inspired by code by marvinthepa.

Also adds a pulse mixer.