Cleanup and organize packaging files and process

Mike mentioned that it was unfortunate that running build_packages.sh left the directory dirty. Files were left scattered and the ignore file only had a smattering of them. Take that as an excuse to drastically clean it up.

Instead of each packaging section having to know about all of the individual files and locations, pull out all the commonality into two helper functions (build_sql_layer and build_client_tools). These are parameterized by output path but otherwise uninteresting. All staging and output is now done in target/packaging/ with the final result (deb, rpm, pkg) being in target/.

Having all if it done in a central location allowed the rpm spec and deb install to become much simpler. A nice outcome is that paths or files can be added or removed with only the script changing.