UAR 629: Adding more fixes in order to use CustomProtocolAttachmentProtocol that contains ARNO feature

Notes: In order to use the customized class CustomProtocolAttachment, It would have been necessary to subclass org.kuali.kra.irb.Protocol as well (and customize getProtocolAttachmentProtocolClassHook() and initializeProtocolAttachmentFilter() methods). However, the org.kuali.kra.irb.Protocol.class is hard-coded in 22 distinct services, helpers and daos that would have had to be modified/subclassed as well and this small change to add a Protocol Attachment Amendment Renewal number would have triggered massive code changes with a high risk of creating regression bugs.
For this reason, I've imported irb.Protocol from foundation and changed the two methods mentioned above and posted a question on the kc-tech forum to see if there are better solutions.
Also, a lot of classes I had to change were included in release2, that is why I merged master back into this branch.