Allow custom compile flags & prevent compilation on every chef-client run

Hi there,

I've made some changes to...
* allow custom compile flags
* prevent recompilation on every chef-client run (when using the source-recipe) - only recompile when compile flags and/or source code changes

Do let me know if you have any further questions or comments - thanks in advance for merging this PR!

Kind regards,
David