diff --git a/CHANGELOG b/CHANGELOG
index c2676d95aba4ed7e0ebf37528b679ace16e4272e..5ddd8c6f4e09fcd6ca9040e2e1f8b6b705d83b68 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,5 +1,21 @@
 minerva (11.0.0) stable; urgency=medium
 
+  * Bug fix: security issue - access to specific map can be restricted 
+    by the userlogin 
+  * Bug fix: sbgn import
+  * Bug fix: mesh connector
+  * Rest API (documentation can be found here: 
+    https://git-r3lab.uni.lu/piotr.gawron/minerva/blob/master/README.md)
+  * Selecting an element on the map shows info about it in the bottom left
+    corner (when Search tab is not open) 
+  * Upload of data overlays allows to upload just names of the proteins
+    (or other elements), it can be done via file or just by typing in the
+    proper text box 
+  * Layout changes: the main one is that there are only 3 tab panels 
+    (search, overlay, info), so it should be easier to navigate
+
+ -- Piotr Gawron <piotr.gawron@uni.lu>  Mon, 28 Aug 2017 12:00:00 +0200
+
 minerva (10.0.5) stable; urgency=medium
 
   * Bug fix: interacting drugs can be found for RNAs
diff --git a/debian/create-debian-pkg.sh b/debian/create-debian-pkg.sh
index f390d7a4080cc8f5a1a37433c3bbfd97d6f5a930..1a6936e6fc9fa7c2cd17bd88b313eb2a8acc7a19 100755
--- a/debian/create-debian-pkg.sh
+++ b/debian/create-debian-pkg.sh
@@ -49,6 +49,8 @@ gzip $SRC_DIR/minerva.txt
 #copy configuration of logrotate
 cp debian/logrotate/* $SRC_DIR/
 
+cp debian/scripts/common.sh $SRC_DIR/
+
 #copy changelog file
 cp CHANGELOG $ROOT_DIR/debian/template/changelog
 
@@ -150,22 +152,17 @@ find -name '*.ex' ! -name 'minerva*' -type f -exec rm -f {} +
 
 #our pre/post inst/rm scripts use __CURRENT_VERSION__ as a version of currently
 #installed package
-sed -i "s/__CURRENT_VERSION__/$current_version/g" debian/preinst
-sed -i "s/__CURRENT_VERSION__/$current_version/g" debian/postinst
-sed -i "s/__CURRENT_VERSION__/$current_version/g" debian/prerm
-sed -i "s/__CURRENT_VERSION__/$current_version/g" debian/postrm
-
-sed -i "s/__LOG_FILE__/$LOG_FILE/g" debian/preinst
-sed -i "s/__LOG_FILE__/$LOG_FILE/g" debian/postinst
-sed -i "s/__LOG_FILE__/$LOG_FILE/g" debian/prerm
-sed -i "s/__LOG_FILE__/$LOG_FILE/g" debian/postrm
 
+sed -i "s/__CURRENT_VERSION__/$current_version/g" common.sh
+sed -i "s/__LOG_FILE__/$LOG_FILE/g" common.sh
 #__DB_SCRIPT_DIR__ in our scripts points to place where db schema files are placed
 #in the filesystem where package is installed
-sed -i "s/__DB_SCRIPT_DIR__/$DB_SCRIPT_DIR/g" debian/postinst
-sed -i "s/__DB_SCRIPT_DIR__/$DB_SCRIPT_DIR/g" debian/postrm
-sed -i "s/__DB_SCRIPT_DIR__/$DB_SCRIPT_DIR/g" debian/prerm
-sed -i "s/__DB_SCRIPT_DIR__/$DB_SCRIPT_DIR/g" debian/preinst
+sed -i "s/__DB_SCRIPT_DIR__/$DB_SCRIPT_DIR/g" common.sh
+
+sed -i -e "1r common.sh" debian/postinst
+sed -i -e "1r common.sh" debian/postrm
+sed -i -e "1r common.sh" debian/preinst
+sed -i -e "1r common.sh" debian/prerm
 
 #put scripts into $DB_SCRIPT_DIR (it's a bit different than varaiable because it's not
 #escaped
diff --git a/debian/scripts/common.sh b/debian/scripts/common.sh
new file mode 100644
index 0000000000000000000000000000000000000000..246724cb9444cdf4d2c503fe804ab3d973ffa338
--- /dev/null
+++ b/debian/scripts/common.sh
@@ -0,0 +1,29 @@
+#file with common script functions for postrm/prerm/postinst/preinst
+log(){
+	echo "[" $CURRENT_VERSION "]" "$@" >>__LOG_FILE__
+}
+LOG_FILE="__LOG_FILE__"
+
+DB_SCRIPT_DIR="__DB_SCRIPT_DIR__"
+
+#new (current) version of the package
+CURRENT_VERSION="__CURRENT_VERSION__"
+#if we update package then this will be the old version of the package
+OLD_VERSION=$2
+
+if [ "$OLD_VERSION" = "$CURRENT_VERSION" ]
+then
+	OLD_VERSION="";
+fi
+
+TOMCAT_PACKAGE="";
+TOMCAT7_OK=$(dpkg-query -W --showformat='${Status}\n' tomcat7|grep "install ok installed")
+TOMCAT8_OK=$(dpkg-query -W --showformat='${Status}\n' tomcat8|grep "install ok installed")
+if [ "$TOMCAT7_OK" != "" ];
+then
+  TOMCAT_PACKAGE='tomcat7'
+fi
+if [ "$TOMCAT8_OK" != "" ];
+then
+  TOMCAT_PACKAGE='tomcat8'
+fi
diff --git a/debian/template/control b/debian/template/control
index 25913b4c153d4c4f53324c1e96d205742ce30b35..dcb5946ab20574544cfcc59508f78714bc39af25 100644
--- a/debian/template/control
+++ b/debian/template/control
@@ -13,4 +13,4 @@ Description: Standalone web application for visualization, exploration and
  Tomcat server later to change the address.
 Section: science
 Homepage: http://r3lab.uni.lu/web/minerva-website/
-Depends: ${misc:Depends}, tomcat7, oracle-java8-set-default, postgresql (>=9.3)
+Depends: ${misc:Depends}, tomcat7 | tomcat8, oracle-java8-set-default, postgresql (>=9.3)
diff --git a/debian/template/install b/debian/template/install
index 493361aaa4fa86ab02bede0f7ff7a1f42c031491..7e81d5fb433700abf97710e8570f13708aa0b5ef 100644
--- a/debian/template/install
+++ b/debian/template/install
@@ -1 +1 @@
-minerva.war /var/lib/tomcat7/webapps
+minerva.war /usr/share/minerva/
diff --git a/debian/template/postinst b/debian/template/postinst
index a1b144da74bc63a39bcf6be638790e68c0688b04..44228b77f9db6a5d9d50ee43d4917a886fe73f9e 100644
--- a/debian/template/postinst
+++ b/debian/template/postinst
@@ -13,28 +13,12 @@
 #          <conflicting-package> <version>
 # for details, see http://www.debian.org/doc/debian-policy/ or
 # the debian-policy package
-log(){
-	echo "$@" >>__LOG_FILE__
-}
 log "Running postinst" $1 $2;
+invoke-rc.d $TOMCAT_PACKAGE status >> $LOG_FILE
 
 # we execute it here because if some packages are missing then dpkg will return non-zero exit code
 set -e
 
-
-#new (current) version of the package
-CURRENT_VERSION="__CURRENT_VERSION__"
-#if we update package then this will be the old version of the package
-OLD_VERSION=$2
-
-DB_SCRIPT_DIR="__DB_SCRIPT_DIR__"
-
-if [ "$OLD_VERSION" = "$CURRENT_VERSION" ]
-then
-	OLD_VERSION="";
-fi
-
-
 case "$1" in
     configure)
     invoke-rc.d postgresql start
@@ -42,9 +26,9 @@ case "$1" in
 		#if we install
 		if [ "$OLD_VERSION" = "" ]
 		then
-			su - postgres -c "createuser -d -r -s map_viewer"  >>__LOG_FILE__ 2>>__LOG_FILE__
-			su - postgres -c "echo \"ALTER USER map_viewer WITH PASSWORD '123qweasdzxc';\"| psql"  >>__LOG_FILE__ 2>>__LOG_FILE__
-			su - postgres -c "createdb -O map_viewer map_viewer"  >>__LOG_FILE__ 2>>__LOG_FILE__
+			su - postgres -c "createuser -d -r -s map_viewer"  >>$LOG_FILE 2>>$LOG_FILE
+			su - postgres -c "echo \"ALTER USER map_viewer WITH PASSWORD '123qweasdzxc';\"| psql"  >>$LOG_FILE 2>>$LOG_FILE
+			su - postgres -c "createdb -O map_viewer map_viewer"  >>$LOG_FILE 2>>$LOG_FILE
 
 			hba_conf=`su - postgres -c "psql -t -P format=unaligned -c 'show hba_file';"`;
 			cp $hba_conf $hba_conf".bac"
@@ -53,13 +37,13 @@ case "$1" in
 	    invoke-rc.d postgresql restart
 
 			#install base version of the framework
-			su - postgres -c "psql map_viewer -f $DB_SCRIPT_DIR/db_0.sql" >>__LOG_FILE__ 2>>__LOG_FILE__
+			su - postgres -c "psql map_viewer -f $DB_SCRIPT_DIR/db_0.sql" >>$LOG_FILE 2>>$LOG_FILE
 			#install patch to current version
-			su - postgres -c "psql map_viewer -f $DB_SCRIPT_DIR/db_0_to_$CURRENT_VERSION\".sql\"" >>__LOG_FILE__ 2>>__LOG_FILE__
+			su - postgres -c "psql map_viewer -f $DB_SCRIPT_DIR/db_0_to_$CURRENT_VERSION\".sql\"" >>$LOG_FILE 2>>$LOG_FILE
 
 		else
 			#if we update the package
-			su - postgres -c "psql map_viewer -f $DB_SCRIPT_DIR/db_$OLD_VERSION\"_to_\"$CURRENT_VERSION\".sql\""  >>__LOG_FILE__ 2>>__LOG_FILE__
+			su - postgres -c "psql map_viewer -f $DB_SCRIPT_DIR/db_$OLD_VERSION\"_to_\"$CURRENT_VERSION\".sql\""  >>$LOG_FILE 2>>$LOG_FILE
 		fi
 
 		#print a disclaimer
@@ -78,7 +62,10 @@ case "$1" in
 #we have to restart tomcat, because application was started on the old database and it might crash during deplyment
 #for instance in the new war file there was init script that uses some new database features, but they are not
 #availble when new war is deployed from debian package, so tomcat will catch SQL exception and stop deployment
-    invoke-rc.d tomcat7 restart
+    invoke-rc.d $TOMCAT_PACKAGE stop || true
+    rm -rf /var/lib/$TOMCAT_PACKAGE/webapps/minerva
+    ln -s /usr/share/minerva/minerva.war /var/lib/$TOMCAT_PACKAGE/webapps/minerva.war 
+    invoke-rc.d $TOMCAT_PACKAGE start
     ;;
     *)
         echo "postinst called with unknown argument \`$1'" >&2
diff --git a/debian/template/postrm b/debian/template/postrm
index 1bbb913d1ea531617049d130f6a4fd0d442be495..89144fb629ef34fd3761bc2c749f6cebfcfd4840 100644
--- a/debian/template/postrm
+++ b/debian/template/postrm
@@ -7,9 +7,6 @@
 #        * <old-postrm> `upgrade' <new-version>
 # for details, see http://www.debian.org/doc/debian-policy/ or
 # the debian-policy package
-log(){
-	echo "$@" >>__LOG_FILE__
-}
 
 log "Running postrm" $1 $2;
 
@@ -27,13 +24,15 @@ set -e
 
 case "$1" in
     upgrade)
-			rm -rf /var/lib/tomcat7/webapps/minerva
-			invoke-rc.d tomcat7 start || true
-			invoke-rc.d postgresql start || true
+			rm -rf /var/lib/$TOMCAT_PACKAGE/webapps/minerva
+			rm -rf /var/lib/$TOMCAT_PACKAGE/webapps/minerva.war
+#			invoke-rc.d $TOMCAT_PACKAGE start || true
+#			invoke-rc.d postgresql start || true
     ;;
     remove)
-			rm -rf /var/lib/tomcat7/webapps/minerva
-			invoke-rc.d tomcat7 start || true
+			rm -rf /var/lib/$TOMCAT_PACKAGE/webapps/minerva
+			rm -rf /var/lib/$TOMCAT_PACKAGE/webapps/minerva.war
+			invoke-rc.d $TOMCAT_PACKAGE start || true
 			if [ "" = "$POSTGRES_OK" ]
 			then
 				log "No postgresql package found.";
@@ -44,7 +43,7 @@ case "$1" in
 			fi
     ;;
 		abort-install)
-			invoke-rc.d tomcat7 start || true
+			invoke-rc.d $TOMCAT_PACKAGE start || true
 
 			if [ "" = "$POSTGRES_OK" ]; 
 			then
diff --git a/debian/template/preinst b/debian/template/preinst
index 1abc655eb13bdd0e7687c11f932d13629824dd1d..c6ad957eb6803a810a043143bf5845e16a3017ef 100644
--- a/debian/template/preinst
+++ b/debian/template/preinst
@@ -9,11 +9,6 @@
 # for details, see http://www.debian.org/doc/debian-policy/ or
 # the debian-policy package
 
-
-log(){
-	echo "$@" >>__LOG_FILE__
-}
-
 log "Running preinst" $1 $2;
 
 # we execute it here because if some packages are missing then dpkg will return non-zero exit code
@@ -29,11 +24,11 @@ ln -s $path $DEFAULT_JAVA_SYMLINK
 
 case "$1" in
     install|upgrade)
-			invoke-rc.d tomcat7 stop || true
+			invoke-rc.d $TOMCAT_PACKAGE stop || true
 			invoke-rc.d postgresql stop || true
     ;;
     abort-upgrade)
-			invoke-rc.d tomcat7 stop || true
+			invoke-rc.d $TOMCAT_PACKAGE stop || true
 			invoke-rc.d postgresql stop || true
     ;;
     *)
diff --git a/debian/template/prerm b/debian/template/prerm
index d6c80c445fb07e3c6621618992daf9ed789f71b0..c43b60f8fa2c3f996db03de69cc8b7e261d9220e 100644
--- a/debian/template/prerm
+++ b/debian/template/prerm
@@ -8,14 +8,9 @@ set -e
 #        * <new-preinst> `upgrade' <old-version>
 # for details, see http://www.debian.org/doc/debian-policy/ or
 # the debian-policy package
-log(){
-	echo "$@" >>__LOG_FILE__
-}
 
 log "Running preinst" $1 $2;
 
-DB_SCRIPT_DIR="__DB_SCRIPT_DIR__"
-
 
 # we execute it here because if some packages are missing then dpkg will return non-zero exit code
 set -e
@@ -30,11 +25,11 @@ su - postgres -c "pg_dump map_viewer"  | gzip > "$DUMP_FILE".gz
 case "$1" in
 
     upgrade)
-			invoke-rc.d tomcat7 stop || true
+			invoke-rc.d $TOMCAT_PACKAGE stop || true
 			invoke-rc.d postgresql stop || true
     ;;
     remove)
-			invoke-rc.d tomcat7 stop || true
+			invoke-rc.d $TOMCAT_PACKAGE stop || true
 			invoke-rc.d postgresql stop || true
     ;;
     *)
diff --git a/frontend-js/package.json b/frontend-js/package.json
index 5fb54350658b7055fa7bba9c60112f64877eeed0..3b749184bc3135b5761220b188a22757f7b0b399 100644
--- a/frontend-js/package.json
+++ b/frontend-js/package.json
@@ -9,7 +9,7 @@
     "//": "rm -rf dist & rmdir /q /s dist & mkdir dist & browserify --debug --standalone minerva src/main/js/minerva.js | exorcist dist/minerva.js.map > dist/minerva.js & uglifyjs --compress --mangle --in-source-map dist/minerva.js.map --source-map-include-sources --source-map dist/minerva.min.js.map -o dist/minerva.min.js dist/minerva.js",
     "build-deploy": "npm run build && npm run deploy",
     "build": "npm run clean && npm run build:css && npm run build:js",
-    "clean": "rm -rf dist & rmdir /q /s dist & mkdir dist",
+    "clean": "node scripts/clean.js",
     "deploy": "copy /Y \"dist\\*.js*\" \"C:/Program Files/apache-tomcat-7.0.72/webapps/minerva/resources/js\" &&  copy /Y \"dist\\*.css\" \"C:/Program Files/apache-tomcat-7.0.72/webapps/minerva/resources/css\" ",
     "lint": "jshint src/.",
     "test": "istanbul cover node_modules/mocha/bin/_mocha -- --recursive src/test/js"
@@ -22,6 +22,7 @@
     "browserify": "^13.1.1",
     "chai": "^3.5.0",
     "clean-css-cli": "^4.1.6",
+    "del": "^3.0.0",
     "datatables.net": "^1.10.13",
     "exorcist": "^0.4.0",
     "file-url": "^2.0.0",
@@ -32,6 +33,7 @@
     "jsdom-global": "^2.1.1",
     "jshint": "^2.9.4",
     "log4js-memory-appender": "1.0.5",
+    "mkdirp": "^0.5.1",
     "mocha": "^3.4.1",
     "uglifyjs": "^2.4.10"
   },
diff --git a/frontend-js/scripts/clean.js b/frontend-js/scripts/clean.js
new file mode 100644
index 0000000000000000000000000000000000000000..1822779c31f651f8caa6538c5138f32fd1f666cc
--- /dev/null
+++ b/frontend-js/scripts/clean.js
@@ -0,0 +1,15 @@
+var del = require('del');
+var mkdirp = require('mkdirp');
+
+
+var exec = require('child_process').exec;
+function puts(error, stdout, stderr) { console.log(stdout) }
+
+
+var os = require('os');
+//control OS
+//then run command depengin on the OS
+
+del(["dist/"]).then(function(){
+  return mkdirp("dist");
+});
diff --git a/frontend-js/src/main/js/gui/LoginDialog.js b/frontend-js/src/main/js/gui/LoginDialog.js
index 9f4485225759e0dffd2683a0cae8baaeb93e42cc..733e5f698546a98b094a836e9e56a77f9cbf8cec 100644
--- a/frontend-js/src/main/js/gui/LoginDialog.js
+++ b/frontend-js/src/main/js/gui/LoginDialog.js
@@ -7,7 +7,7 @@ var GuiConnector = require('../GuiConnector');
 var InvalidCredentialsError = require('../InvalidCredentialsError');
 var PanelControlElementType = require('./PanelControlElementType');
 
-var Functions = require('../functions');
+var Functions = require('../Functions');
 var logger = require('../logger');
 
 function LoginDialog(params) {
diff --git a/frontend-js/src/main/js/gui/OverviewDialog.js b/frontend-js/src/main/js/gui/OverviewDialog.js
index a791a8b189d575cccff4232138328701c80682b2..648702aa0725f821a82f7e377fe6e90259183507 100644
--- a/frontend-js/src/main/js/gui/OverviewDialog.js
+++ b/frontend-js/src/main/js/gui/OverviewDialog.js
@@ -5,7 +5,7 @@
 var AbstractGuiElement = require('./AbstractGuiElement');
 var GuiConnector = require('../GuiConnector');
 
-var functions = require('../functions');
+var functions = require('../Functions');
 var logger = require('../logger');
 
 function OverviewDialog(params) {
diff --git a/frontend-js/src/main/js/gui/leftPanel/PublicationListDialog.js b/frontend-js/src/main/js/gui/leftPanel/PublicationListDialog.js
index f0ca0ae29d996a7b7c4f5c2fe18f8c83f5b8a010..7018ef0c9e1a1494235865839c993fa467b4a880 100644
--- a/frontend-js/src/main/js/gui/leftPanel/PublicationListDialog.js
+++ b/frontend-js/src/main/js/gui/leftPanel/PublicationListDialog.js
@@ -10,7 +10,7 @@ var GuiConnector = require('../../GuiConnector');
 var IdentifiedElement = require('../../map/data/IdentifiedElement');
 var Reaction = require('../../map/data/Reaction');
 
-var Functions = require('../../functions');
+var Functions = require('../../Functions');
 var logger = require('../../logger');
 
 function PublicationListDialog(params) {
diff --git a/frontend-js/src/test/js/mocha-config.js b/frontend-js/src/test/js/mocha-config.js
index dda8135e47a5f1bc7a67cf3b3fabade5eef5d413..9330b06b032050569ec4811a762ce62763f9f7d0 100644
--- a/frontend-js/src/test/js/mocha-config.js
+++ b/frontend-js/src/test/js/mocha-config.js
@@ -3,7 +3,7 @@
 var Promise = require("bluebird");
 var Cookies = require('js-cookie');
 
-var Helper = require('./Helper');
+var Helper = require('./helper');
 
 var GuiConnector = require('./GuiConnector-mock');
 
@@ -40,7 +40,7 @@ before(function () {
   global.document.elementFromPoint = function () {
   };
 
-  global.$ = require('jQuery');
+  global.$ = require('jquery');
   global.jQuery = $;
   global.window.$ = $;
 
diff --git a/persist/src/db/11/fix_db_20170616.sql b/persist/src/db/11.0.0/fix_db_20170616.sql
similarity index 100%
rename from persist/src/db/11/fix_db_20170616.sql
rename to persist/src/db/11.0.0/fix_db_20170616.sql
diff --git a/persist/src/db/11/fix_db_20170627.sql b/persist/src/db/11.0.0/fix_db_20170627.sql
similarity index 100%
rename from persist/src/db/11/fix_db_20170627.sql
rename to persist/src/db/11.0.0/fix_db_20170627.sql
diff --git a/persist/src/db/11/fix_db_20170628.sql b/persist/src/db/11.0.0/fix_db_20170628.sql
similarity index 100%
rename from persist/src/db/11/fix_db_20170628.sql
rename to persist/src/db/11.0.0/fix_db_20170628.sql
diff --git a/persist/src/db/11/fix_db_20170629.sql b/persist/src/db/11.0.0/fix_db_20170629.sql
similarity index 100%
rename from persist/src/db/11/fix_db_20170629.sql
rename to persist/src/db/11.0.0/fix_db_20170629.sql
diff --git a/persist/src/db/11/fix_db_20170705.sql b/persist/src/db/11.0.0/fix_db_20170705.sql
similarity index 100%
rename from persist/src/db/11/fix_db_20170705.sql
rename to persist/src/db/11.0.0/fix_db_20170705.sql
diff --git a/persist/src/db/11/fix_db_20170714.sql b/persist/src/db/11.0.0/fix_db_20170714.sql
similarity index 100%
rename from persist/src/db/11/fix_db_20170714.sql
rename to persist/src/db/11.0.0/fix_db_20170714.sql
diff --git a/persist/src/db/11/fix_db_20170725.sql b/persist/src/db/11.0.0/fix_db_20170725.sql
similarity index 100%
rename from persist/src/db/11/fix_db_20170725.sql
rename to persist/src/db/11.0.0/fix_db_20170725.sql
diff --git a/persist/src/db/11/fix_db_20170731.sql b/persist/src/db/11.0.0/fix_db_20170731.sql
similarity index 100%
rename from persist/src/db/11/fix_db_20170731.sql
rename to persist/src/db/11.0.0/fix_db_20170731.sql