Method annotations overrides class ones

When you write a test, you may define a @DatabaseSetup at class level to apply to all methods but you may want to define a method specific dataset. I think that, if you have a @DatabaseSetup at class level and method level, most of the case, you want the method level one to prevail.

The same reflection applies to @ExpectedDatabase and @DatabaseTearDown.

I changed the sample test to say :
- all (most of) the tests loads sampleData.xml datas (same behavior as before the code updates)
- all (most of) the tests are read-only so the database is not changed
- the remove test change the database so the expected dataset change