app: fixes for kv_directory and kv_file, converted both of them to StringProperty. Also use resource_find() to correctly find the kv_directory if we are executing the app from another directory. closes #1028. closes #302.