major code refactor - made action and trigger shared between client and server, so no need for DTO objects; added "advice" concept to triggers