To answer your other question, yes you can include a very small fee and it might take a long to for your transaction to confirm if it ever does. After several days, most nodes will forget your transaction if it doesnt confirm but it will remain valid as long as all the inputs remain unspent. This means someone may broadcast your transaction long into the future if it is still valid. This means you should keep your private keys, including backups if you ever even try unsuccessfully to send coin between wallets.
Wow, so there is no way to cancel an unconfirmed transaction even after say 2 weeks of it being unconfirmed? What happens then? How to get it on the blockchain later?