some fixes.
new files for the previous fixes. (previous commit might not compile.)