added exitcodedictionary and some explaination to why the plugin works as it does