Allows Multiple Executions (Not Idempotent)

So this addresses the biggest issue with the original recipe. The first recipe could only be executed once because there were no guards on marking when the database scripts had been run. In this implementation we use notifications to send run actions to our three scripts if and only if a database_prepared file is not present.