Allow automatic material property output from Output objects

This adds material property output to be enable from [Outputs] block, see http://mooseframework.org/wiki/MooseSystems/Materials/#output-via-outputs

This will allow for simple material output for problems that have many Material objects defined with the same property in each.

closes #3538
Might as well check the result if you are going to `dynamic_cast`