@Override
	public void start(final Stage primaryStage) throws MalformedURLException {

		contacts = this;
		stage = primaryStage;

		primaryStage.setTitle(AppSettings.getStringValue("app.title.text"));
		primaryStage.initStyle(StageStyle.TRANSPARENT);

		root = new StackPane();
		root.getStyleClass().add("root-stack");

		Scene scene = new Scene(root,
				AppSettings.getDoubleValue("app.window.width"),
				AppSettings.getDoubleValue("app.window.height"),
				Color.TRANSPARENT);

		File mainStyle = new File("resources/style/style.css");
		File windowButtonStyle = new File("resources/style/window-buttons.css");
		scene.getStylesheets().add(mainStyle.toURI().toURL().toExternalForm());
		scene.getStylesheets().add(
				windowButtonStyle.toURI().toURL().toExternalForm());

		BorderPane pane = new BorderPane();
		pane.getStyleClass().add("root-pane");
		VBox topBox = new VBox(10);
		Header header = new Header();
		Region spacer = new Region();
		VBox.setVgrow(spacer, Priority.ALWAYS);
		topBox.getChildren().addAll(header, spacer);

		Footer footer = new Footer();

		pane.setTop(topBox);
		pane.setCenter(Body.getInstance());
		pane.setBottom(footer);

		root.getChildren().addAll(pane);

		primaryStage.setScene(scene);
		primaryStage.show();

		fullName = new NamePopup(primaryStage, "Name");
		phoneNumber = new PhonePopup(primaryStage, "Contact Details",
				"Business");
		addressDetail = new AddressPopup(primaryStage, "Contact Details",
				"Business");
	}