diff --git a/Manifest.toml b/Manifest.toml
new file mode 100644
index 0000000000000000000000000000000000000000..5ecfc14be8906e4f220ceec68b0ed7a539737252
--- /dev/null
+++ b/Manifest.toml
@@ -0,0 +1,699 @@
+# This file is machine-generated - editing it directly is not advised
+
+[[AbstractFFTs]]
+deps = ["LinearAlgebra"]
+git-tree-sha1 = "380e36c66edfa099cd90116b24c1ce8cafccac40"
+uuid = "621f4979-c628-5d54-868e-fcf4e3e8185c"
+version = "0.4.1"
+
+[[ArrayInterface]]
+deps = ["Requires", "Test"]
+git-tree-sha1 = "6a1a371393e56f5e8d5657fe4da4b11aea0bfbae"
+uuid = "4fba245c-0d91-5ea0-9b3e-6abc04ee57a9"
+version = "0.1.1"
+
+[[AssetRegistry]]
+deps = ["Distributed", "JSON", "Pidfile", "SHA", "Test"]
+git-tree-sha1 = "b25e88db7944f98789130d7b503276bc34bc098e"
+uuid = "bf4720bc-e11a-5d0c-854e-bdca1663c893"
+version = "0.1.0"
+
+[[Base64]]
+uuid = "2a0f44e3-6c83-55bd-87e4-b1978d98bd5f"
+
+[[BinDeps]]
+deps = ["Compat", "Libdl", "SHA", "URIParser"]
+git-tree-sha1 = "12093ca6cdd0ee547c39b1870e0c9c3f154d9ca9"
+uuid = "9e28174c-4ba2-5203-b857-d8d62c4213ee"
+version = "0.8.10"
+
+[[BinaryProvider]]
+deps = ["Libdl", "SHA"]
+git-tree-sha1 = "c7361ce8a2129f20b0e05a89f7070820cfed6648"
+uuid = "b99e7846-7c00-51b0-8f62-c81ae34c0232"
+version = "0.5.4"
+
+[[Blink]]
+deps = ["Base64", "BinDeps", "Distributed", "JSExpr", "JSON", "Lazy", "Libdl", "Logging", "MacroTools", "Mustache", "Mux", "Reexport", "Sockets", "Test", "WebIO", "WebSockets"]
+git-tree-sha1 = "5b0ca771f6e59bbba820888af8a6edbcc62bc86a"
+uuid = "ad839575-38b3-5650-b840-f874b8c74a25"
+version = "0.10.1"
+
+[[BufferedStreams]]
+deps = ["Compat", "Test"]
+git-tree-sha1 = "5d55b9486590fdda5905c275bb21ce1f0754020f"
+uuid = "e1450e63-4bb3-523b-b2a4-4ffa8c0fd77d"
+version = "1.0.0"
+
+[[CSSUtil]]
+deps = ["Colors", "Compat", "JSON", "Measures", "Pkg", "WebIO"]
+git-tree-sha1 = "ff13fd99e4dd54f56eb064815f843bc992a871a2"
+uuid = "70588ee8-6100-5070-97c1-3cb50ed05fe8"
+version = "0.1.0"
+
+[[CSTParser]]
+deps = ["LibGit2", "Test", "Tokenize"]
+git-tree-sha1 = "437c93bc191cd55957b3f8dee7794b6131997c56"
+uuid = "00ebfdb7-1f24-5e51-bd34-a7502290713f"
+version = "0.5.2"
+
+[[Cairo]]
+deps = ["BinDeps", "Colors", "Compat", "Graphics", "Homebrew", "Libdl", "WinRPM"]
+git-tree-sha1 = "a427098d5aa2808504d94b8ed9fc5740ceaf71d0"
+uuid = "159f3aea-2a34-519c-b102-8c37f9878175"
+version = "0.5.6"
+
+[[Calculus]]
+deps = ["Compat"]
+git-tree-sha1 = "f60954495a7afcee4136f78d1d60350abd37a409"
+uuid = "49dc2e85-a5d0-5ad3-a950-438e2897f1b9"
+version = "0.4.1"
+
+[[ColorTypes]]
+deps = ["FixedPointNumbers", "Random"]
+git-tree-sha1 = "10050a24b09e8e41b951e9976b109871ce98d965"
+uuid = "3da002f7-5984-5a60-b8a6-cbb66c0b333f"
+version = "0.8.0"
+
+[[Colors]]
+deps = ["ColorTypes", "FixedPointNumbers", "InteractiveUtils", "Printf", "Reexport", "Test"]
+git-tree-sha1 = "9f0a0210450acb91c730b730a994f8eef1d3d543"
+uuid = "5ae59095-9a9b-59fe-a467-6f913c188581"
+version = "0.9.5"
+
+[[CommonSubexpressions]]
+deps = ["Test"]
+git-tree-sha1 = "efdaf19ab11c7889334ca247ff4c9f7c322817b0"
+uuid = "bbf7d656-a473-5ed7-a52c-81e309532950"
+version = "0.2.0"
+
+[[Compat]]
+deps = ["Base64", "Dates", "DelimitedFiles", "Distributed", "InteractiveUtils", "LibGit2", "Libdl", "LinearAlgebra", "Markdown", "Mmap", "Pkg", "Printf", "REPL", "Random", "Serialization", "SharedArrays", "Sockets", "SparseArrays", "Statistics", "Test", "UUIDs", "Unicode"]
+git-tree-sha1 = "84aa74986c5b9b898b0d1acaf3258741ee64754f"
+uuid = "34da2185-b29b-5c13-b0c7-acf172513d20"
+version = "2.1.0"
+
+[[Conda]]
+deps = ["Compat", "JSON", "VersionParsing"]
+git-tree-sha1 = "b625d802587c2150c279a40a646fba63f9bd8187"
+uuid = "8f4d0f93-b110-5947-807f-2305c1781a2d"
+version = "1.2.0"
+
+[[Contour]]
+deps = ["LinearAlgebra", "StaticArrays", "Test"]
+git-tree-sha1 = "b974e164358fea753ef853ce7bad97afec15bb80"
+uuid = "d38c429a-6771-53c6-b99e-75d170b6e991"
+version = "0.5.1"
+
+[[ControlSystems]]
+deps = ["Colors", "DSP", "IterTools", "LaTeXStrings", "LinearAlgebra", "OrdinaryDiffEq", "Plots", "Polynomials", "Printf", "Random", "SparseArrays", "Test"]
+git-tree-sha1 = "e5c5452262ea9239fcd5d22fd67c43f811bf387c"
+uuid = "a6e380b2-a6ca-5380-bf3e-84a91bcd477e"
+version = "0.5.3"
+
+[[DSP]]
+deps = ["AbstractFFTs", "Compat", "FFTW", "LinearAlgebra", "Polynomials", "Random", "Reexport", "SpecialFunctions"]
+git-tree-sha1 = "5ec38ebc4ddf6320ad50b826eb8fd7fb521993a5"
+uuid = "717857b8-e6f2-59f4-9121-6e50c889abd2"
+version = "0.5.2"
+
+[[DataStructures]]
+deps = ["InteractiveUtils", "OrderedCollections", "Random", "Serialization", "Test"]
+git-tree-sha1 = "ca971f03e146cf144a9e2f2ce59674f5bf0e8038"
+uuid = "864edb3b-99cc-5e75-8d2d-829cb0a9cfe8"
+version = "0.15.0"
+
+[[Dates]]
+deps = ["Printf"]
+uuid = "ade2ca70-3891-5945-98fb-dc099432e06a"
+
+[[DelimitedFiles]]
+deps = ["Mmap"]
+uuid = "8bb1440f-4735-579b-a4ab-409b98df4dab"
+
+[[DiffEqBase]]
+deps = ["Compat", "DocStringExtensions", "IterativeSolvers", "IteratorInterfaceExtensions", "LinearAlgebra", "MuladdMacro", "Parameters", "RecipesBase", "RecursiveArrayTools", "RecursiveFactorization", "Requires", "Roots", "SparseArrays", "StaticArrays", "Statistics", "SuiteSparse", "TableTraits", "TreeViews"]
+git-tree-sha1 = "efc7b2774ca1e962e9b529bb89d2f2f4e72b7516"
+uuid = "2b5f629d-d688-5b77-993f-72d75c75574e"
+version = "5.8.1"
+
+[[DiffEqDiffTools]]
+deps = ["LinearAlgebra"]
+git-tree-sha1 = "14c4ec4f8796e71ba034f5089b6186876574a49d"
+uuid = "01453d9d-ee7c-5054-8395-0335cb756afa"
+version = "0.10.1"
+
+[[DiffEqOperators]]
+deps = ["DiffEqBase", "ForwardDiff", "LinearAlgebra", "SparseArrays", "StaticArrays", "SuiteSparse"]
+git-tree-sha1 = "2884a79a72aac38347b247615ac42eda41aa36e0"
+uuid = "9fdde737-9c7f-55bf-ade8-46b3f136cc48"
+version = "3.5.0"
+
+[[DiffResults]]
+deps = ["Compat", "StaticArrays"]
+git-tree-sha1 = "34a4a1e8be7bc99bc9c611b895b5baf37a80584c"
+uuid = "163ba53b-c6d8-5494-b064-1a9d43ac40c5"
+version = "0.0.4"
+
+[[DiffRules]]
+deps = ["Random", "Test"]
+git-tree-sha1 = "dc0869fb2f5b23466b32ea799bd82c76480167f7"
+uuid = "b552c78f-8df3-52c6-915a-8e097449b14b"
+version = "0.0.10"
+
+[[Distances]]
+deps = ["LinearAlgebra", "Printf", "Random", "Statistics", "Test"]
+git-tree-sha1 = "a135c7c062023051953141da8437ed74f89d767a"
+uuid = "b4f34e82-e78d-54a5-968a-f98e89d6e8f7"
+version = "0.8.0"
+
+[[Distributed]]
+deps = ["Random", "Serialization", "Sockets"]
+uuid = "8ba89e20-285c-5b6f-9357-94700520ee1b"
+
+[[DocStringExtensions]]
+deps = ["LibGit2", "Markdown", "Pkg", "Test"]
+git-tree-sha1 = "4d30e889c9f106a51ffa4791a88ffd4765bf20c3"
+uuid = "ffbed154-4ef7-542d-bbb7-c09d3a79fcae"
+version = "0.7.0"
+
+[[ExponentialUtilities]]
+deps = ["LinearAlgebra", "Printf", "Random", "SparseArrays", "Test"]
+git-tree-sha1 = "6fad21cd7637d0ad6a7661f8abea1149922d6c9c"
+uuid = "d4d017d3-3776-5f7e-afef-a10c40355c18"
+version = "1.4.0"
+
+[[FFTW]]
+deps = ["AbstractFFTs", "BinaryProvider", "Compat", "Conda", "Libdl", "LinearAlgebra", "Reexport", "Test"]
+git-tree-sha1 = "29cda58afbf62f35b1a094882ad6c745a47b2eaa"
+uuid = "7a1cc6ca-52ef-59f5-83cd-3a7055c09341"
+version = "0.2.4"
+
+[[FileWatching]]
+uuid = "7b1f6079-737a-58dc-b8bc-7a2ca5c1b5ee"
+
+[[FixedPointNumbers]]
+git-tree-sha1 = "d14a6fa5890ea3a7e5dcab6811114f132fec2b4b"
+uuid = "53c48c17-4a7d-5ca2-90c5-79b7896eea93"
+version = "0.6.1"
+
+[[ForwardDiff]]
+deps = ["CommonSubexpressions", "DiffResults", "DiffRules", "InteractiveUtils", "LinearAlgebra", "NaNMath", "Random", "SparseArrays", "SpecialFunctions", "StaticArrays", "Test"]
+git-tree-sha1 = "4c4d727f1b7e0092134fabfab6396b8945c1ea5b"
+uuid = "f6369f11-7733-5829-9624-2563aa707210"
+version = "0.10.3"
+
+[[FunctionalCollections]]
+deps = ["Test"]
+git-tree-sha1 = "04cb9cfaa6ba5311973994fe3496ddec19b6292a"
+uuid = "de31a74c-ac4f-5751-b3fd-e18cd04993ca"
+version = "0.5.0"
+
+[[GR]]
+deps = ["Base64", "DelimitedFiles", "LinearAlgebra", "Pkg", "Printf", "Random", "Serialization", "Sockets", "Test"]
+git-tree-sha1 = "9dff2d231311da78648abfa3287e3458a578d2f8"
+uuid = "28b8d3ca-fb5f-59d9-8090-bfdbd6d07a71"
+version = "0.40.0"
+
+[[GenericSVD]]
+deps = ["LinearAlgebra", "Random", "Test"]
+git-tree-sha1 = "8aa93c3f3d81562a8962047eafcc5712af0a0f59"
+uuid = "01680d73-4ee2-5a08-a1aa-533608c188bb"
+version = "0.2.1"
+
+[[GeometryTypes]]
+deps = ["ColorTypes", "FixedPointNumbers", "IterTools", "LinearAlgebra", "StaticArrays"]
+git-tree-sha1 = "05796e9ac5a8fb8adfdcdf842fb8737d1cb5924e"
+uuid = "4d00f742-c7ba-57c2-abde-4428a4b178cb"
+version = "0.7.4"
+
+[[Graphics]]
+deps = ["Colors", "Compat", "NaNMath"]
+git-tree-sha1 = "e3ead4211073d4117a0d2ef7d1efc5c8092c8412"
+uuid = "a2bd30eb-e257-5431-a919-1863eab51364"
+version = "0.4.0"
+
+[[Gtk]]
+deps = ["BinDeps", "Cairo", "Compat", "Graphics", "Homebrew", "Libdl", "Reexport", "Serialization", "Test", "WinRPM"]
+git-tree-sha1 = "dd884c7cbd08c8e370172bdd535d6bea45359537"
+uuid = "4c0ca9eb-093a-5379-98c5-f87ac0bbbf44"
+version = "0.16.5"
+
+[[HTTP]]
+deps = ["Base64", "Dates", "IniFile", "MbedTLS", "Sockets"]
+git-tree-sha1 = "854fad2a2b9cc6678f70ed15a65fc7e572056d39"
+uuid = "cd3eb016-35fb-5094-929b-558a96fad6f3"
+version = "0.8.2"
+
+[[HTTPClient]]
+deps = ["Compat", "LibCURL"]
+git-tree-sha1 = "161d5776ae8e585ac0b8c20fb81f17ab755b3671"
+uuid = "0862f596-cf2d-50af-8ef4-f2be67dfa83f"
+version = "0.2.1"
+
+[[Hiccup]]
+deps = ["MacroTools", "Test"]
+git-tree-sha1 = "6187bb2d5fcbb2007c39e7ac53308b0d371124bd"
+uuid = "9fb69e20-1954-56bb-a84f-559cc56a8ff7"
+version = "0.2.2"
+
+[[Homebrew]]
+deps = ["BinDeps", "InteractiveUtils", "JSON", "Libdl", "Test", "Unicode"]
+git-tree-sha1 = "f01fb2f34675f9839d55ba7238bab63ebd2e531e"
+uuid = "d9be37ee-ecc9-5288-90f1-b9ca67657a75"
+version = "0.7.1"
+
+[[IniFile]]
+deps = ["Test"]
+git-tree-sha1 = "098e4d2c533924c921f9f9847274f2ad89e018b8"
+uuid = "83e8ac13-25f8-5344-8a64-a9f2b223428f"
+version = "0.5.0"
+
+[[InspectDR]]
+deps = ["Cairo", "Colors", "Graphics", "Gtk", "NumericIO", "Pkg", "Printf", "Random", "Test"]
+git-tree-sha1 = "93de72344abd5dfd4e0a4c33d9ea987fa29d9140"
+uuid = "d0351b0e-4b05-5898-87b3-e2a8edfddd1d"
+version = "0.3.4"
+
+[[Interact]]
+deps = ["CSSUtil", "InteractBase", "JSON", "Knockout", "Observables", "OrderedCollections", "Reexport", "Test", "WebIO", "Widgets"]
+git-tree-sha1 = "f6531bc554990a6659966afcb8f05543c032068b"
+uuid = "c601a237-2ae4-5e1e-952c-7a85b0c7eef1"
+version = "0.10.2"
+
+[[InteractBase]]
+deps = ["Base64", "CSSUtil", "Colors", "Dates", "JSExpr", "JSON", "Knockout", "Observables", "OrderedCollections", "Random", "Test", "WebIO", "Widgets"]
+git-tree-sha1 = "83fc45f21bfec97e5cd56e790f6945497ab0f095"
+uuid = "d3863d7c-f0c8-5437-a7b4-3ae773c01009"
+version = "0.10.1"
+
+[[InteractiveUtils]]
+deps = ["Markdown"]
+uuid = "b77e0a4c-d291-57a0-90e8-8db25a27a240"
+
+[[IterTools]]
+deps = ["SparseArrays", "Test"]
+git-tree-sha1 = "79246285c43602384e6f1943b3554042a3712056"
+uuid = "c8e1da08-722c-5040-9ed9-7db0dc04731e"
+version = "1.1.1"
+
+[[IterativeSolvers]]
+deps = ["LinearAlgebra", "Printf", "Random", "RecipesBase", "SparseArrays", "Test"]
+git-tree-sha1 = "5687f68018b4f14c0da54d402bb23eecaec17f37"
+uuid = "42fd0dbc-a981-5370-80f2-aaf504508153"
+version = "0.8.1"
+
+[[IteratorInterfaceExtensions]]
+git-tree-sha1 = "a3f24677c21f5bbe9d2a714f95dcd58337fb2856"
+uuid = "82899510-4779-5014-852e-03e436cf321d"
+version = "1.0.0"
+
+[[JSExpr]]
+deps = ["JSON", "MacroTools", "Observables", "Test", "WebIO"]
+git-tree-sha1 = "013bc2143a2e84ea489365cf30db3407deb540c2"
+uuid = "97c1335a-c9c5-57fe-bc5d-ec35cebe8660"
+version = "0.5.0"
+
+[[JSON]]
+deps = ["Dates", "Distributed", "Mmap", "Sockets", "Test", "Unicode"]
+git-tree-sha1 = "1f7a25b53ec67f5e9422f1f551ee216503f4a0fa"
+uuid = "682c06a0-de6a-54ab-a142-c8b1cf79cde6"
+version = "0.20.0"
+
+[[Knockout]]
+deps = ["JSExpr", "JSON", "Observables", "Pkg", "Test", "WebIO"]
+git-tree-sha1 = "5cca7f070f85392cd0f42220c8ea5f7be96dacf4"
+uuid = "bcebb21b-c2e3-54f8-a781-646b90f6d2cc"
+version = "0.2.2"
+
+[[LaTeXStrings]]
+deps = ["Compat"]
+git-tree-sha1 = "7ab9b8788cfab2bdde22adf9004bda7ad9954b6c"
+uuid = "b964fa9f-0449-5b57-a5c2-d3ea65f4040f"
+version = "1.0.3"
+
+[[LabConnections]]
+deps = ["Serialization", "Sockets"]
+path = "/local/home/albheim/.julia/dev/LabConnections"
+uuid = "e9ebaa62-f26d-11e8-0a59-692f6511a9a1"
+version = "0.1.0"
+
+[[LabGUI]]
+deps = ["Interact", "Mux", "WebIO"]
+path = "/local/home/albheim/.julia/dev/LabGUI"
+uuid = "31661155-7747-5a32-9846-082300d6a5a6"
+version = "0.1.0"
+
+[[LabProcesses]]
+deps = ["ControlSystems", "DSP", "LabConnections", "LinearAlgebra", "Parameters"]
+path = "/local/home/albheim/.julia/dev/LabProcesses"
+uuid = "ce8ed945-fee5-5b18-bb88-129fae14b07e"
+version = "0.1.0"
+
+[[Lazy]]
+deps = ["Compat", "MacroTools", "Test"]
+git-tree-sha1 = "aec38c7e7f255a678af22651c74100e3cd39ea20"
+uuid = "50d2b5c4-7a5e-59d5-8109-a42b560f39c0"
+version = "0.13.2"
+
+[[LibCURL]]
+deps = ["BinaryProvider", "Libdl"]
+git-tree-sha1 = "5ee138c679fa202ebe211b2683d1eee2a87b3dbe"
+uuid = "b27032c2-a3e7-50c8-80cd-2d36dbcbfd21"
+version = "0.5.1"
+
+[[LibExpat]]
+deps = ["Compat"]
+git-tree-sha1 = "fde352ec13479e2f90e57939da2440fb78c5e388"
+uuid = "522f3ed2-3f36-55e3-b6df-e94fee9b0c07"
+version = "0.5.0"
+
+[[LibGit2]]
+uuid = "76f85450-5226-5b5a-8eaa-529ad045b433"
+
+[[Libdl]]
+uuid = "8f399da3-3557-5675-b5ff-fb832c97cbdb"
+
+[[Libz]]
+deps = ["BufferedStreams", "Random", "Test"]
+git-tree-sha1 = "d405194ffc0293c3519d4f7251ce51baac9cc871"
+uuid = "2ec943e9-cfe8-584d-b93d-64dcb6d567b7"
+version = "1.0.0"
+
+[[LineSearches]]
+deps = ["LinearAlgebra", "NLSolversBase", "NaNMath", "Parameters", "Printf", "Test"]
+git-tree-sha1 = "54eb90e8dbe745d617c78dee1d6ae95c7f6f5779"
+uuid = "d3d80556-e9d4-5f37-9878-2ab0fcc64255"
+version = "7.0.1"
+
+[[LinearAlgebra]]
+deps = ["Libdl"]
+uuid = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"
+
+[[Logging]]
+uuid = "56ddb016-857b-54e1-b83d-db4d58db5568"
+
+[[MacroTools]]
+deps = ["CSTParser", "Compat", "DataStructures", "Test"]
+git-tree-sha1 = "daecd9e452f38297c686eba90dba2a6d5da52162"
+uuid = "1914dd2f-81c6-5fcd-8719-6d5c9610ff09"
+version = "0.5.0"
+
+[[Markdown]]
+deps = ["Base64"]
+uuid = "d6f4376e-aef5-505a-96c1-9c027394607a"
+
+[[MbedTLS]]
+deps = ["BinaryProvider", "Dates", "Distributed", "Libdl", "Random", "Sockets", "Test"]
+git-tree-sha1 = "2d94286a9c2f52c63a16146bb86fd6cdfbf677c6"
+uuid = "739be429-bea8-5141-9913-cc70e7f3736d"
+version = "0.6.8"
+
+[[Measures]]
+deps = ["Test"]
+git-tree-sha1 = "ddfd6d13e330beacdde2c80de27c1c671945e7d9"
+uuid = "442fdcdd-2543-5da2-b0f3-8c86c306513e"
+version = "0.3.0"
+
+[[Missings]]
+deps = ["SparseArrays", "Test"]
+git-tree-sha1 = "f0719736664b4358aa9ec173077d4285775f8007"
+uuid = "e1d29d7a-bbdc-5cf2-9ac0-f12de2c33e28"
+version = "0.4.1"
+
+[[Mmap]]
+uuid = "a63ad114-7e13-5084-954f-fe012c677804"
+
+[[MuladdMacro]]
+deps = ["MacroTools", "Test"]
+git-tree-sha1 = "41e6e7c4b448afeaddaac7f496b414854f83b848"
+uuid = "46d2c3a1-f734-5fdb-9937-b9b9aeba4221"
+version = "0.2.1"
+
+[[Mustache]]
+deps = ["Printf", "Tables"]
+git-tree-sha1 = "d27b8b8b99c052ea1fdd40c678bfb2dfaec4e96e"
+uuid = "ffc61752-8dc7-55ee-8c37-f3e9cdd09e70"
+version = "0.5.12"
+
+[[Mux]]
+deps = ["AssetRegistry", "Base64", "HTTP", "Hiccup", "Lazy", "Pkg", "Sockets", "Test", "WebSockets"]
+git-tree-sha1 = "5b41f03d63400c290bab4e1a49fb9ac36de1084a"
+uuid = "a975b10e-0019-58db-a62f-e48ff68538c9"
+version = "0.7.0"
+
+[[NLSolversBase]]
+deps = ["Calculus", "DiffEqDiffTools", "DiffResults", "Distributed", "ForwardDiff", "LinearAlgebra", "Random", "SparseArrays", "Test"]
+git-tree-sha1 = "0c6f0e7f2178f78239cfb75310359eed10f2cacb"
+uuid = "d41bc354-129a-5804-8e4c-c37616107c6c"
+version = "7.3.1"
+
+[[NLsolve]]
+deps = ["DiffEqDiffTools", "Distances", "ForwardDiff", "LineSearches", "LinearAlgebra", "NLSolversBase", "Printf", "Random", "Reexport", "SparseArrays", "Test"]
+git-tree-sha1 = "413e54f04a4cbe9804089794eec6b06b2a43bc47"
+uuid = "2774e3e8-f4cf-5e23-947b-6d7e65073b56"
+version = "4.0.0"
+
+[[NaNMath]]
+deps = ["Compat"]
+git-tree-sha1 = "ce3b85e484a5d4c71dd5316215069311135fa9f2"
+uuid = "77ba4419-2d1f-58cd-9bb1-8ffee604a2e3"
+version = "0.3.2"
+
+[[NumericIO]]
+deps = ["Printf", "Test"]
+git-tree-sha1 = "eacd69d8b2b97b6689d9d9bf829de57409b063e3"
+uuid = "6c575b1c-77cb-5640-a5dc-a54116c90507"
+version = "0.3.0"
+
+[[Observables]]
+deps = ["Test"]
+git-tree-sha1 = "dc02cec22747d1d10d9f70d8a1c03432b5bfbcd0"
+uuid = "510215fc-4207-5dde-b226-833fc4488ee2"
+version = "0.2.3"
+
+[[OrderedCollections]]
+deps = ["Random", "Serialization", "Test"]
+git-tree-sha1 = "c4c13474d23c60d20a67b217f1d7f22a40edf8f1"
+uuid = "bac558e1-5e72-5ebc-8fee-abe8a469f55d"
+version = "1.1.0"
+
+[[OrdinaryDiffEq]]
+deps = ["DataStructures", "DiffEqBase", "DiffEqDiffTools", "DiffEqOperators", "ExponentialUtilities", "ForwardDiff", "GenericSVD", "LinearAlgebra", "Logging", "MuladdMacro", "NLsolve", "Parameters", "RecursiveArrayTools", "Reexport", "StaticArrays"]
+git-tree-sha1 = "300118c9211d3a11dad71e66bc9eb4a158c39c16"
+uuid = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed"
+version = "5.7.0"
+
+[[Parameters]]
+deps = ["Markdown", "OrderedCollections", "REPL", "Test"]
+git-tree-sha1 = "70bdbfb2bceabb15345c0b54be4544813b3444e4"
+uuid = "d96e819e-fc66-5662-9728-84c9c7592b0a"
+version = "0.10.3"
+
+[[Pidfile]]
+deps = ["FileWatching", "Test"]
+git-tree-sha1 = "1ffd82728498b5071cde851bbb7abd780d4445f3"
+uuid = "fa939f87-e72e-5be4-a000-7fc836dbe307"
+version = "1.1.0"
+
+[[Pkg]]
+deps = ["Dates", "LibGit2", "Markdown", "Printf", "REPL", "Random", "SHA", "UUIDs"]
+uuid = "44cfe95a-1eb2-52ea-b672-e2afdf69b78f"
+
+[[PlotThemes]]
+deps = ["PlotUtils", "Requires", "Test"]
+git-tree-sha1 = "f3afd2d58e1f6ac9be2cea46e4a9083ccc1d990b"
+uuid = "ccf2f8ad-2431-5c83-bf29-c5338b663b6a"
+version = "0.3.0"
+
+[[PlotUtils]]
+deps = ["Colors", "Dates", "Printf", "Random", "Reexport", "Test"]
+git-tree-sha1 = "8e87bbb778c26f575fbe47fd7a49c7b5ca37c0c6"
+uuid = "995b91a9-d308-5afd-9ec6-746e21dbc043"
+version = "0.5.8"
+
+[[Plots]]
+deps = ["Base64", "Contour", "Dates", "FixedPointNumbers", "GR", "GeometryTypes", "JSON", "LinearAlgebra", "Measures", "NaNMath", "Pkg", "PlotThemes", "PlotUtils", "Printf", "REPL", "Random", "RecipesBase", "Reexport", "Requires", "Showoff", "SparseArrays", "Statistics", "StatsBase", "UUIDs"]
+git-tree-sha1 = "c446e51959578de01b5a4efa72ca6f2460e38196"
+uuid = "91a5bcdd-55d7-5caf-9e0b-520d859cae80"
+version = "0.25.1"
+
+[[Polynomials]]
+deps = ["LinearAlgebra", "SparseArrays", "Test"]
+git-tree-sha1 = "62142bd65d3f8aeb2226ec64dd8493349147df94"
+uuid = "f27b6e38-b328-58d1-80ce-0feddd5e7a45"
+version = "0.5.2"
+
+[[Printf]]
+deps = ["Unicode"]
+uuid = "de0858da-6303-5e67-8744-51eddeeeb8d7"
+
+[[REPL]]
+deps = ["InteractiveUtils", "Markdown", "Sockets"]
+uuid = "3fa0cd96-eef1-5676-8a61-b3b8758bbffb"
+
+[[Random]]
+deps = ["Serialization"]
+uuid = "9a3f8284-a2c9-5f02-9a11-845980a1fd5c"
+
+[[RecipesBase]]
+deps = ["Random", "Test"]
+git-tree-sha1 = "0b3cb370ee4dc00f47f1193101600949f3dcf884"
+uuid = "3cdcf5f2-1ef4-517c-9805-6587b60abb01"
+version = "0.6.0"
+
+[[RecursiveArrayTools]]
+deps = ["ArrayInterface", "RecipesBase", "Requires", "StaticArrays", "Statistics", "Test"]
+git-tree-sha1 = "187ea7dd541955102c7035a6668613bdf52022ca"
+uuid = "731186ca-8d62-57ce-b412-fbd966d074cd"
+version = "0.20.0"
+
+[[RecursiveFactorization]]
+deps = ["LinearAlgebra", "Random", "Test"]
+git-tree-sha1 = "54410ebd72cbb84d7b7678eb3da643f8e71181fc"
+uuid = "f2c3362d-daeb-58d1-803e-2bc74f2840b4"
+version = "0.0.1"
+
+[[Reexport]]
+deps = ["Pkg"]
+git-tree-sha1 = "7b1d07f411bc8ddb7977ec7f377b97b158514fe0"
+uuid = "189a3867-3050-52da-a836-e630ba90ab69"
+version = "0.2.0"
+
+[[Requires]]
+deps = ["Test"]
+git-tree-sha1 = "f6fbf4ba64d295e146e49e021207993b6b48c7d1"
+uuid = "ae029012-a4dd-5104-9daa-d747884805df"
+version = "0.5.2"
+
+[[Roots]]
+deps = ["Printf", "Statistics", "Test"]
+git-tree-sha1 = "7228278e31d6d0e22a1ae0b41ea9a0df2859f33d"
+uuid = "f2b01f46-fcfa-551c-844a-d8ac1e96c665"
+version = "0.8.1"
+
+[[SHA]]
+uuid = "ea8e919c-243c-51af-8825-aaa63cd721ce"
+
+[[Serialization]]
+uuid = "9e88b42a-f829-5b0c-bbe9-9e923198166b"
+
+[[SharedArrays]]
+deps = ["Distributed", "Mmap", "Random", "Serialization"]
+uuid = "1a1011a3-84de-559e-8e89-a11a2f7dc383"
+
+[[Showoff]]
+deps = ["Compat"]
+git-tree-sha1 = "276b24f3ace98bec911be7ff2928d497dc759085"
+uuid = "992d4aef-0814-514b-bc4d-f2e9a6c4116f"
+version = "0.2.1"
+
+[[Sockets]]
+uuid = "6462fe0b-24de-5631-8697-dd941f90decc"
+
+[[SortingAlgorithms]]
+deps = ["DataStructures", "Random", "Test"]
+git-tree-sha1 = "03f5898c9959f8115e30bc7226ada7d0df554ddd"
+uuid = "a2af1166-a08f-5f64-846c-94a0d3cef48c"
+version = "0.3.1"
+
+[[SparseArrays]]
+deps = ["LinearAlgebra", "Random"]
+uuid = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
+
+[[SpecialFunctions]]
+deps = ["BinDeps", "BinaryProvider", "Libdl", "Test"]
+git-tree-sha1 = "0b45dc2e45ed77f445617b99ff2adf0f5b0f23ea"
+uuid = "276daf66-3868-5448-9aa4-cd146d93841b"
+version = "0.7.2"
+
+[[StaticArrays]]
+deps = ["InteractiveUtils", "LinearAlgebra", "Random", "Statistics", "Test"]
+git-tree-sha1 = "3841b39ed5f047db1162627bf5f80a9cd3e39ae2"
+uuid = "90137ffa-7385-5640-81b9-e52037218182"
+version = "0.10.3"
+
+[[Statistics]]
+deps = ["LinearAlgebra", "SparseArrays"]
+uuid = "10745b16-79ce-11e8-11f9-7d13ad32a3b2"
+
+[[StatsBase]]
+deps = ["DataStructures", "LinearAlgebra", "Missings", "Printf", "Random", "SortingAlgorithms", "SparseArrays", "Statistics"]
+git-tree-sha1 = "8a0f4b09c7426478ab677245ab2b0b68552143c7"
+uuid = "2913bbd2-ae8a-5f71-8c99-4fb6c76f3a91"
+version = "0.30.0"
+
+[[SuiteSparse]]
+deps = ["Libdl", "LinearAlgebra", "SparseArrays"]
+uuid = "4607b0f0-06f3-5cda-b6b1-a6196a1729e9"
+
+[[TableTraits]]
+deps = ["IteratorInterfaceExtensions"]
+git-tree-sha1 = "b1ad568ba658d8cbb3b892ed5380a6f3e781a81e"
+uuid = "3783bdb8-4a98-5b6b-af9a-565f29a5fe9c"
+version = "1.0.0"
+
+[[Tables]]
+deps = ["IteratorInterfaceExtensions", "LinearAlgebra", "Requires", "TableTraits", "Test"]
+git-tree-sha1 = "351a4b894122e1553c6ed05fda54086ab036adef"
+uuid = "bd369af6-aec1-5ad0-b16a-f7cc5008161c"
+version = "0.2.5"
+
+[[Test]]
+deps = ["Distributed", "InteractiveUtils", "Logging", "Random"]
+uuid = "8dfed614-e22c-5e08-85e1-65c5234f0b40"
+
+[[Tokenize]]
+deps = ["Printf", "Test"]
+git-tree-sha1 = "3e83f60b74911d3042d3550884ca2776386a02b8"
+uuid = "0796e94c-ce3b-5d07-9a54-7f471281c624"
+version = "0.5.3"
+
+[[TreeViews]]
+deps = ["Test"]
+git-tree-sha1 = "8d0d7a3fe2f30d6a7f833a5f19f7c7a5b396eae6"
+uuid = "a2a6695c-b41b-5b7d-aed9-dbfdeacea5d7"
+version = "0.3.0"
+
+[[URIParser]]
+deps = ["Test", "Unicode"]
+git-tree-sha1 = "6ddf8244220dfda2f17539fa8c9de20d6c575b69"
+uuid = "30578b45-9adc-5946-b283-645ec420af67"
+version = "0.4.0"
+
+[[UUIDs]]
+deps = ["Random", "SHA"]
+uuid = "cf7118a7-6976-5b1a-9a39-7adc72f591a4"
+
+[[Unicode]]
+uuid = "4ec0a83e-493e-50e2-b9ac-8f72acf5a8f5"
+
+[[VersionParsing]]
+deps = ["Compat"]
+git-tree-sha1 = "c9d5aa108588b978bd859554660c8a5c4f2f7669"
+uuid = "81def892-9a0e-5fdd-b105-ffc91e053289"
+version = "1.1.3"
+
+[[WebIO]]
+deps = ["AssetRegistry", "Base64", "Compat", "Distributed", "FunctionalCollections", "JSON", "Logging", "Observables", "Random", "Requires", "Sockets", "UUIDs", "WebSockets", "Widgets"]
+path = "/local/home/albheim/.julia/dev/WebIO"
+uuid = "0f1e0344-ec1d-5b48-a673-e5cf874b6c29"
+version = "0.8.1+"
+
+[[WebSockets]]
+deps = ["Base64", "Dates", "Distributed", "HTTP", "Logging", "Random", "Sockets", "Test"]
+git-tree-sha1 = "13f763d38c7a05688938808b49cb29b18b60c8c8"
+uuid = "104b5d7c-a370-577a-8038-80a2059c5097"
+version = "1.5.2"
+
+[[Widgets]]
+deps = ["Colors", "Dates", "Observables", "OrderedCollections", "Test"]
+git-tree-sha1 = "c53befc70c6b91eaa2a9888c2f6ac2d92720a81b"
+uuid = "cc8bc4a8-27d6-5769-a93b-9d913e69aa62"
+version = "0.6.1"
+
+[[WinRPM]]
+deps = ["BinDeps", "Compat", "HTTPClient", "LibExpat", "Libdl", "Libz", "URIParser"]
+git-tree-sha1 = "2a889d320f3b77d17c037f295859fe570133cfbf"
+uuid = "c17dfb99-b4f7-5aad-8812-456da1ad7187"
+version = "0.4.2"
diff --git a/Project.toml b/Project.toml
new file mode 100644
index 0000000000000000000000000000000000000000..66691533518e441d4ad9c6b24ebe3ef204e6da00
--- /dev/null
+++ b/Project.toml
@@ -0,0 +1,18 @@
+name = "DoubleTankLab"
+uuid = "d2f8a755-70d4-5d1a-adca-8717da4f3191"
+authors = ["Jacob Wikmark"]
+repo = "https://gitlab.control.lth.se/processes/DoubleTankLab.jl/commits/master"
+version = "0.1.0"
+
+[deps]
+Blink = "ad839575-38b3-5650-b840-f874b8c74a25"
+DelimitedFiles = "8bb1440f-4735-579b-a4ab-409b98df4dab"
+InspectDR = "d0351b0e-4b05-5898-87b3-e2a8edfddd1d"
+Interact = "c601a237-2ae4-5e1e-952c-7a85b0c7eef1"
+LabConnections = "e9ebaa62-f26d-11e8-0a59-692f6511a9a1"
+LabGUI = "31661155-7747-5a32-9846-082300d6a5a6"
+LabProcesses = "ce8ed945-fee5-5b18-bb88-129fae14b07e"
+Mux = "a975b10e-0019-58db-a62f-e48ff68538c9"
+Parameters = "d96e819e-fc66-5662-9728-84c9c7592b0a"
+Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80"
+WebIO = "0f1e0344-ec1d-5b48-a673-e5cf874b6c29"
diff --git a/REQUIRE b/REQUIRE
deleted file mode 100644
index c62678148882e3ac8ad36866d5806f4da3be4557..0000000000000000000000000000000000000000
--- a/REQUIRE
+++ /dev/null
@@ -1,6 +0,0 @@
-julia 0.6
-InteractNext
-LabGUI
-Plots
-LabConnections
-LabProcesses
diff --git a/src/DoubleTankLab.jl b/src/DoubleTankLab.jl
index 4c488fea570ddcaae5de8dc59405295e9a84f8ea..9763bf8ad331c7366448d745cc40f0a0a119e99e 100644
--- a/src/DoubleTankLab.jl
+++ b/src/DoubleTankLab.jl
@@ -1,7 +1,6 @@
-using WebIO
 module DoubleTankLab
-using InteractNext, WebIO, Mux, Plots, LabProcesses, LabGUI, Mux, LabConnections#, Blink
-const webio_serve = Main.webio_serve
+using Interact, WebIO, Plots, InspectDR, LabProcesses, LabGUI, Mux, 
+      LabConnections, DelimitedFiles#, Blink
 include("tankgraphic.jl")
 include("doubletank.jl")
 include("tanklabgui.jl")
diff --git a/src/doubletank.jl b/src/doubletank.jl
index 7e19db563f3270ea324a59d5f3bf884fea8dad32..6d60b4989dd694fa34a40cc7c075b90613ff1c81 100644
--- a/src/doubletank.jl
+++ b/src/doubletank.jl
@@ -23,7 +23,7 @@ end
 ############################################################
 
 # This allows calibration without having to toggle the pump controller
-function LabConnections.Computer.send(n::Void, a::Number)
+function LabConnections.Computer.send(n::Cvoid, a::Number)
     nothing
 end
 
@@ -70,7 +70,7 @@ function (p::PID)(r, y, onv=(1,1,1))
         Tot += I
     end
     y_old = y
-    @pack p = P, I, D, Tot, y_old
+    @pack! p = P, I, D, Tot, y_old
     Tot
 end
 
@@ -97,7 +97,7 @@ mutable struct Pump <: PhysicalProcess
     pid::PID
     venturirange::Array{Float64, 1}
     measure::AnalogInput10V
-    control::Union{AnalogOutput10V, Void}
+    control::Union{AnalogOutput10V, Cvoid}
 end
 
 function Pump(stream)
@@ -222,7 +222,6 @@ end
 
 
 const AbstractDoubleTank = Union{DoubleTank, DoubleTankSimulator}
-
 num_outputs(p::AbstractDoubleTank) = 2
 num_inputs(p::AbstractDoubleTank)  = 1
 outputrange(p::AbstractDoubleTank) = [(0.0,1.0),(0.0,1.0)] 
@@ -260,7 +259,7 @@ function control(p::DoubleTankSimulator, u::Number)
     x[2] += (dA2*h)/A
 
     x /= scale
-    @pack p = a1, a2, g, x, A, h 
+    @pack! p = a1, a2, g, x, A, h 
 end
 
 
diff --git a/src/tankdemo.jl b/src/tankdemo.jl
index ebff17489732a41a63633008a245aa22a1cc6815..e0ca0ccd6be5c64955409e7f0652882eae2104f6 100644
--- a/src/tankdemo.jl
+++ b/src/tankdemo.jl
@@ -25,10 +25,12 @@ function runprocess(;simulated=false, webservice=true, port=8000, σ = 0.001, du
     inspectdr(show=false)
 
     function run_process(P, gui, pidcontroller, duration = duration) #four hours
+        println("start of run_process")
         y = 0.0
         u = 0.0
         n = 1
         LabProcesses.initialize(P)
+        start_time = time()
         for t in 0:P.h:duration
             @periodically P.h begin
                 y  = measure(P)[n]
@@ -41,7 +43,7 @@ function runprocess(;simulated=false, webservice=true, port=8000, σ = 0.001, du
                 onv = Int.([gui[s]=="On" for s in [:pOn, :iOn, :dOn]])
                 rv = pidcontroller(r, y, onv)
                 if gui[:mode]=="Automatic"
-                    gui[:u] = clamp(round(rv,2), 0, 1) #u's constructor has only a dummy graphic so this is fine
+                    gui[:u] = clamp(round(rv,digits=2), 0, 1) #u's constructor has only a dummy graphic so this is fine
                     control(P, rv)
                 elseif gui[:mode]=="Manual"
                     control(P, gui[:u])
@@ -50,6 +52,7 @@ function runprocess(;simulated=false, webservice=true, port=8000, σ = 0.001, du
                         pidcontroller.I = gui[:u]-(pidcontroller.Tot-pidcontroller.I)
                     end
                 end
+                @show t # Not working without some print in the loop, not sure why...
                 push!(gui, y, 1)
                 push!(gui, r, 2)
                 push!(gui, pidcontroller.P, 3)
@@ -59,12 +62,12 @@ function runprocess(;simulated=false, webservice=true, port=8000, σ = 0.001, du
                 push!(gui, t, 7)
             end
         end
-        print("The lab time is over, go home! 😊\n") #Easter egg, unlikely to be shown
+        println("The lab time is over, go home! 😊\n") #Easter egg, unlikely to be shown
         LabProcesses.finalize(P)
     end
 
 
-    g1, r1, tp = makegui(R, run_process)
+    g1, r1, tp = makegui(R, run_process, 1, 1)
 
     if webservice
         webio_serve(page("/", r1), port)
diff --git a/src/tankgraphic.jl b/src/tankgraphic.jl
index a0ffaa711ed78d79eb6edae133e1643c22000342..c6ee8176fc89d0d38041c2f4e178123b787a48be 100644
--- a/src/tankgraphic.jl
+++ b/src/tankgraphic.jl
@@ -28,8 +28,8 @@ function stream(width, height, x, y)
                    "to" => "$(y+ht)", "dur" => sp, "repeatCount" => "indefinite")
     anim1 = dom"svg:animate"(attributes=animate1)
     anim2 = dom"svg:animate"(attributes=animate2)
-    stline1 = Node(instanceof(dom"svg:rect"()), anim1, style = smallstyle, attributes = attr_small)
-    stline2 = Node(instanceof(dom"svg:rect"()), anim2, style = smallstyle, attributes = attr_small)
+    stline1 = node(instanceof(dom"svg:rect"()), anim1, style = smallstyle, attributes = attr_small)
+    stline2 = node(instanceof(dom"svg:rect"()), anim2, style = smallstyle, attributes = attr_small)
     (svg_rect(width, height, x, y, bigstyle), stline1, stline2)
 end
 
@@ -44,7 +44,7 @@ function water_container(width, height, fill, x=0, y=0)
                            "y" => "$y",
                            "width" => "$width",
                           "height" => "$height")
-    Node(svgsvg_symb, 
+    node(svgsvg_symb, 
          svg_rect(width, fill_level, 0, height-fill_level, water_style),
          svg_rect(wall_thickness, height, 0, 0, wall_style),
          svg_rect(wall_thickness, height, width-wall_thickness, 0, wall_style),
@@ -94,7 +94,7 @@ function tank_construct(upper, lower, pump_speed = 1, tnum = 0, r = -1)
 
 
     #The order of svg objects is important, latter elements are laid on top of existing ones
-    Node(svgsvg_symb, 
+    node(svgsvg_symb, 
          stream(w1, height+50, upper_x+(width-w1)/2, 50)...,
     stream(w2, height+50, upper_x+(width-w2)/2, height+100)...,
     stream(w3, 100, upper_x+(width-w3)/2, 2*height+150)...,
diff --git a/src/tanklabgui.jl b/src/tanklabgui.jl
index 1ea274af796c60f44549291c8d2a08252fa70155..f91a9ed8f934e887e6f0db57e832ba0eff356ed7 100644
--- a/src/tanklabgui.jl
+++ b/src/tanklabgui.jl
@@ -46,6 +46,7 @@ function makegui(P, run_process, plottingframerate = 10, guiframerate = 10)
         if !endswith(rbox, ".") && rbox != "0"
             try 
                 rv = parse(Float64, rbox)
+            catch 
             end
             if 0.0<rv<1.0
                 observe(r).val = rv
@@ -58,9 +59,9 @@ function makegui(P, run_process, plottingframerate = 10, guiframerate = 10)
         svgdummy in checkbox(false, label="This button does nothing")
 
 
-        if observe(tankno)[]=="Upper"
+        if observe(tankno)[] == "Upper"
             tankg = tank_construct(measure(P)..., observe(u)[]*ptfr, 1, observe(r).val)
-        elseif observe(tankno)[]=="Lower"
+        elseif observe(tankno)[] == "Lower"
             tankg = tank_construct(measure(P)..., observe(u)[]*ptfr, 2, observe(r).val)
         else
             tankg = tank_construct(measure(P)..., observe(u)[]*ptfr)
@@ -73,16 +74,16 @@ function makegui(P, run_process, plottingframerate = 10, guiframerate = 10)
         plotdummy in checkbox(false, label="This button does nothing")
 
         dataln = length(gui.data[1])
-        if dataln>maxplotlength
-            start = dataln-maxplotlength
+        if dataln > maxplotlength
+            start = dataln - maxplotlength
         else
-            start=1
+            start = 1
         end
         lnv = glnv[1:min(dataln, maxplotlength+1)]
-        p = plot(layout=(2,1), size=(700, 600), xlabel = "seconds")
-        plot!(p[1], lnv, gui.data[1][start:end], label="y", ylim = boundsupper)
+        p = plot(layout=(2,1), size=(700, 600), xlabel="seconds")
+        plot!(p[1], lnv, gui.data[1][start:end], label="y", ylim=boundsupper)
         plot!(p[1], lnv, gui.data[2][start:end], label="r")
-        plot!(p[2], lnv, gui.data[3][start:end], label="P", ylim = boundslower)
+        plot!(p[2], lnv, gui.data[3][start:end], label="P", ylim=boundslower)
         plot!(p[2], lnv, gui.data[4][start:end], label="I")
         plot!(p[2], lnv, gui.data[5][start:end], label="D")
         plot!(p[2], lnv, gui.data[6][start:end], label="Tot", color=:black)
@@ -170,8 +171,8 @@ function makegui(P, run_process, plottingframerate = 10, guiframerate = 10)
 
     LabGUI.set!(gui, layout)
 
-    LabGUI.animate(gui, :svgdummy, 1/guiframerate)
-    LabGUI.animate(gui, :plotdummy, 1/plottingframerate)
+    LabGUI.animate(gui, :svgdummy, 1 / guiframerate)
+    LabGUI.animate(gui, :plotdummy, 1 / plottingframerate)
 
     function responder(req)
         @async (sleep(1); gui[:rbox] = "0.5") #Inits r textbox, must be done after dom is loaded in browser
diff --git a/test/runtests.jl b/test/runtests.jl
index 00d00ef6fb98fd632d710095081d21ba95399785..9e39b2724f83851cc7b697b2013f705bb1ac05b5 100644
--- a/test/runtests.jl
+++ b/test/runtests.jl
@@ -1,5 +1,5 @@
 #using DoubleTank
-using LabGUI, InteractNext, Mux, Plots
+using DoubleTankLab, LabGUI, Interact, Mux, Plots, WebIO
 #using Base.Test
 
 ## write your own tests here
@@ -13,20 +13,20 @@ print("- A plot should be shown somewhere\n\n")
 gui = GUI()
 widgets, garbage = @construct for upper in 0:16, 
     lower in 0:16
-    Node(:div, "", id = "blarf")
+    node(:div, "", id = "blarf")
 end
 
 LabGUI.set!(gui, widgets)
 
 dummy, graphic = @construct for tankvar in 0:1
-    tank_construct(gui[:upper]/16, gui[:lower]/16)
+    DoubleTankLab.tank_construct(gui[:upper]/16, gui[:lower]/16)
 end
 
 LabGUI.add!(gui, dummy)
 
 widgets2, graphic2 = @construct for t in 0:0.1:10
-    plot(linspace(0,2pi), sin.(gui[:lower]*linspace(0,2pi)))
-    plot!(linspace(0,2pi), cos.(gui[:upper]*linspace(0,2pi)))
+    plot(range(0, stop=2pi,length=50), sin.(gui[:lower]*range(0, stop=2pi, length=50)))
+    plot!(range(0, stop=2pi, length=50), cos.(gui[:upper]*range(0, stop=2pi, length=50)))
 end
 
 LabGUI.add!(gui, widgets2)