Bug-5 record module

Hi, @john-hu This Patch is for record word feature. Please help me review it. Thank you~
You use RecordUtils to keep the singleton of recorder. This looks good. But it doesn't match the pattern we already used at Player. I would suggest to use a wrapped object, like Recorder object, and expose few APIs. So, we can control the activeRecorder at Activity. And it may be more pure in this file and have more possibility in the future.