merging from master

Just want to keep updated with master branch, each time I'm doing this I'm building on mono to check on problems, so far so good =)