1. Added function to create new Portfolios with a name - opens up as a new tab
2. For stocks ("New Stock" tab for adding to a portfolio) and these new portfolios, the tabs can remain open and the new stocks will be added to the currently selected portfolio (the 'portfolio name' label changes to match it).  Using the existing 'New Portfolio' tab will add to the Porfolios list seen on the "Porfolio" tab.
3. Added an enum (TabStandardNames) to use instead of hard-coding strings.  Unfortunately the tab names will be dynamic too so can't restrict to just using names from this enum
4. Updated TabManager and got rid of 40% of the lines by removing my Map and just using information gleaned from TabPane().getTabs().  This makes it far simpler at a slight time cost (like 2 ms or so).
5. Started move to Preferences by working out how to set the Database location dynamically (see Crud.java changes)
6. BIG CHANGE is that now Portfolios have their own StockModel - done through PortfolioAssociatedStocks.java

TODO:
1. Stock picking - don't want an existing stocks drop down and a box to add a new one.  Would prefer just a box and a realtime lookup is done as the user types to show existing stocks
2. Onwards and upwards with stock data, portfolio data persistence and so on
3. Start using GitHub provided Issue Tracker instead of putting Todo's in here!