[#29980455] Added validation to create asset request

Create asset requests can now only be created for
wells on stock plates, or for sampletubes.
[#29980455] Features avoid creating invalid create asset requests
[#29980907] Removed sample manifest create asset request on plates
[#29980907] Remove other create asset requests on plates
[#29980907] Remove lines, rather than just commenting
[#29980907] Add migration to remove create asset requests for plates
[#29980455] Add migration to remove unwanted create_asset_requests

Create asset requests on wells on no-stock plates are
wrong. Tracking thing back reveals that these appear to
have been created in addition to the create asset
requests on the stock wells, and can be removed.
[#29980455] Refine migration for create_asset requests
[#29980455] Use rails to remove invalid requests
[#29980455] Rename Migrations to later date
[#29980455] Should use find_each to reduce memory usage
[#29980455] find_each does not require :all
[#29980455] Features able to set study on all assets

The features were using create asset request to set
study on innapropriate assets. Now wells on non-stock
plates will have the study set on their aliquots directly.
[#29980455] Refactor to make assets responsible

The CreateAssetRequest now asks assets if they can
be 'created.' Improved robustness of study assignment
in features to prevent it blowing up with eg. LibraryTubes
[#41298561] Fix nested joins

Seems that the vulnerability fix:

https://groups.google.com/forum/?fromgroups=#!topic/rubyonrails-security/l4L0TEVAz1k

Has meant that some of our queries across multiple tables has been
broken.  These two files are the first identified and easily fixed.
Others will probably follow from production usage.
Merge pull request #719 from mattdenner/42198561_rails_vulnerabilities

[#41298561] Fix nested joins
Merge pull request #714 from JamesGlover/2998045_29980907_correct_invalid_create_asset_requests

2998045 29980907 correct invalid create asset requests
[#42280127] Do not use CreateAssetRequest
Merge pull request #721 from mattdenner/42280127_creation_of_plates_via_api_no_longer_works_after_validation_on_createassetrequest

[#42280127] Do not use CreateAssetRequest