Implement Brackets Portable Build on Mac and Windows

Allows Brackets to be run (eg. from removable media, such as a thumb drive) on any Mac or Windows computer without having to first be installed on that computer.  Implements ["Portable build" user story](https://trello.com/c/sHyY0KlB/1003-portable-build).

To set up a portable build onto a removable media storage device, follow these steps:
1. first install Brackets onto a Mac or Windows machine
2. copy the installed binaries to a new folder on your removable media.  For Mac, copy "/Applications/Brackets Sprint XX.app".  For Windows, copy the folder "\Program Files (x86)\Brackets Sprint XX".
3. in the removable media folder, next to either the .app or .exe file, create a new, empty file, named 'makePortable'

That's it!  You can now run Brackets from that removable media on any other Mac or Windows machine.

Note: you can copy both a Mac and Windows portable build onto the same removable media.  However, please be sure to create two different folders into which you copy each platform's build.

When launched, Brackets will check for the existence of the 'makePortable' file, alongside either the .app or .exe.  If it exists, then the following will occur during program execution:
1. preferences will be read from and saved in the 'Brackets' folder on the removable media;
2. extensions will be installed in and run from the 'Brackets\extensions' folder on the removable media; and
3. (on Windows) window state and size will be saved in 'Brackets\lastWindowState.dat' on the removable media.
Just as a quick comment on this point, I've seen programs whose "portable switch" so to speak was a file simply called "portable.dat". I am not sure how this PR works, but if a portable build can be created from a "normal" installation (it does not require a special build/separate download), I would think the file should be named along the lines of just "portable". This way, user's don't have to think "OK, what was that special file name for a portable version again?"