Major code cleanup

This fixes jasperproject/jasper-client#123 and also fixes jasperproject/jasper-client#119. It partly resolves jasperproject/jasper-client#51.

You now should use "client.jasperpath"-module for all path related stuff (instead of hardcoding the strings). There's room for improvement (e.g. put the paths into a config file), but anyhow, this should do it for the moment.

Also, you really need to use the "tempfile"-module, which will create temporary files in the right location (and deletes them afterwards).

Last but not Least: I really don't get all this crazy sys.path-manipulation...what's the deal with that? I removed it for now.

I'll hope you can use these changes.

Fun fact: I did this to make it possible to create a ArchLinux PKGBUILD.
Thanks for tidying this up-- this is fantastic. Yes, a lot of this is unclear since it became a mess when mic.py was written early on and we fiddled around with all the tunable parameters. It seems like the /3 is probably unnecessary. The `seconds` in `get_threshold()` (if that's the one we're referring to?) is only to define the number of seconds over which to take a sample of the sound level that creates the threshold to trigger activeListen. The 20 as the length of the `lastN` queue isn't really defined the value of `seconds` in any way. Older values in lastN will just get overwritten if `seconds` is very long.