added some more encoding options
rolled back the async stuff, needs work